Decompiled Code For INDEX( C49:E50, 2.0, 2.0 )
The expression
=INDEX( C49:E50, 2.0, 2.0 )
is compiled to the following class(es):
package org.formulacompiler.gen; import org.formulacompiler.runtime.Computation; import org.formulacompiler.runtime.FormulaException; import org.formulacompiler.runtime.internal.Environment; 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() { return $idx$0($lin$2$3((int) Runtime_v2.checkDouble(2.0), (int) Runtime_v2.checkDouble(2.0))); } public final double dbl() { return get$0(); } final int $lin$2$3(int i, int i_0_) { if (i >= 1 && i <= 2 && i_0_ >= 1 && i_0_ <= 3) return (i - 1) * 3 + (i_0_ - 1); throw new FormulaException ("#VALUE/REF! because index is out of range in INDEX"); } final double $idx$0(int i) { switch (i) { case 0: return get$1(); case 1: return get$2(); case 2: return get$3(); case 3: return 8.0; case 4: return 9.0; case 5: return 10.0; default: throw new FormulaException ("#VALUE/REF! because index is out of range in INDEX"); } } final double get$1() { return $inputs.dbl(0); } final double get$2() { return $inputs.dbl(1); } final double get$3() { return $inputs.dbl(2); } }