AFC - Abacus Formula Compiler for Java

Decompiled Code For COMBIN( C450, D450 )

The expression

=COMBIN( C450, D450 )

is compiled to the following class(es):

package org.formulacompiler.gen;
import org.formulacompiler.runtime.Computation;
import org.formulacompiler.runtime.internal.Environment;
import org.formulacompiler.runtime.internal.RuntimeDouble_v2;
import org.formulacompiler.runtime.internal.Runtime_v2;
import org.formulacompiler.tests.reference.base.Inputs;
import org.formulacompiler.tests.reference.base.Outputs;

final class $Root extends Outputs implements Computation
{
    private final Inputs $inputs;
    final Environment $environment;

    $Root(Inputs inputs, Environment environment) {
        $environment = environment;
        $inputs = inputs;
    }

    final double get$0() {
        double d;
        if (!(get$1() >= 0.0) || !(get$2() >= 0.0) || get$1() < get$2()) {
            Runtime_v2
                .fun_ERROR("#NUM! because n < 0 or k < 0 or n < k in COMBIN");
            d = (double) -1;
        } else
            d = (get$1()  get$2() ? 1.0 : get$2()  1.0 ? get$1()
                 : (RuntimeDouble_v2.fun_FACT(get$1())
                    / RuntimeDouble_v2.fun_FACT(get$2())
                    / RuntimeDouble_v2.fun_FACT(get$1() - get$2())));
        return d;
    }

    public final double dbl() {
        return get$0();
    }

    final double get$1() {
        return $inputs.dbl(0);
    }

    final double get$2() {
        return $inputs.dbl(1);
    }
}