private static AreaEval convertRangeArg(ValueEval eval) throws EvaluationException { if (eval instanceof AreaEval) { return (AreaEval) eval; } if (eval instanceof RefEval) { return ((RefEval)eval).offset(0, 0, 0, 0); } throw new EvaluationException(ErrorEval.VALUE_INVALID); }
private static Double getValue(AreaEval aeRange, int relRowIndex, int relColIndex) { ValueEval addend = aeRange.getRelativeValue(relRowIndex, relColIndex); if (addend instanceof NumberEval) { return ((NumberEval)addend).getNumberValue(); } // everything else (including string and boolean values) counts as zero return null; }
public ValueEval evaluate(int srcRowIndex, int srcColumnIndex, ValueEval arg0) { double d; try { ValueEval ve = OperandResolver.getSingleValue(arg0, srcRowIndex, srcColumnIndex); d = OperandResolver.coerceValueToDouble(ve); } catch (EvaluationException e) { return e.getErrorEval(); } if (d == 0.0) { // this '==' matches +0.0 and -0.0 return NumberEval.ZERO; } return new NumberEval(-d); } }
public ValueEval evaluate(int srcRowIndex, int srcColumnIndex, ValueEval arg0) { try { OperandResolver.getSingleValue(arg0, srcRowIndex, srcColumnIndex); return ErrorEval.NA; } catch (EvaluationException e) { int result = translateErrorCodeToErrorTypeValue(e.getErrorEval().getErrorCode()); return new NumberEval(result); } }
/** * @return a range of the same dimensions as aeRange using eval to define the top left corner. * @throws EvaluationException if eval is not a reference */ private static AreaEval createSumRange(ValueEval eval, AreaEval aeRange) throws EvaluationException { if (eval instanceof AreaEval) { return ((AreaEval) eval).offset(0, aeRange.getHeight()-1, 0, aeRange.getWidth()-1); } if (eval instanceof RefEval) { return ((RefEval)eval).offset(0, aeRange.getHeight()-1, 0, aeRange.getWidth()-1); } throw new EvaluationException(ErrorEval.VALUE_INVALID); }
public ValueEval evaluate(int srcRowIndex, int srcColumnIndex, ValueEval arg0) { boolean boolArgVal; try { ValueEval ve = OperandResolver.getSingleValue(arg0, srcRowIndex, srcColumnIndex); Boolean b = OperandResolver.coerceValueToBoolean(ve, false); boolArgVal = b == null ? false : b.booleanValue(); } catch (EvaluationException e) { return e.getErrorEval(); } return BoolEval.valueOf(!boolArgVal); } };
public ValueEval evaluate(int srcRowIndex, int srcColumnIndex, ValueEval arg0) { int rnum; if (arg0 instanceof AreaEval) { rnum = ((AreaEval) arg0).getFirstRow(); } else if (arg0 instanceof RefEval) { rnum = ((RefEval) arg0).getRow(); } else { // anything else is not valid argument return ErrorEval.VALUE_INVALID; } return new NumberEval(rnum + 1); } public ValueEval evaluate(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
public ValueEval evaluate(int srcRowIndex, int srcColumnIndex, ValueEval arg0) { int rnum; if (arg0 instanceof AreaEval) { rnum = ((AreaEval) arg0).getFirstColumn(); } else if (arg0 instanceof RefEval) { rnum = ((RefEval) arg0).getColumn(); } else { // anything else is not valid argument return ErrorEval.VALUE_INVALID; } return new NumberEval(rnum + 1); } public ValueEval evaluate(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
public ValueEval evaluate(int srcRowIndex, int srcColumnIndex, ValueEval arg0, ValueEval arg1) { try { AreaEval reA = evaluateRef(arg0); AreaEval reB = evaluateRef(arg1); return resolveRange(reA, reB); } catch (EvaluationException e) { return e.getErrorEval(); } }
public ValueEval evaluate(int srcRowIndex, int srcColumnIndex, ValueEval arg0, ValueEval arg1) { try { AreaEval reA = evaluateRef(arg0); AreaEval reB = evaluateRef(arg1); AreaEval result = resolveRange(reA, reB); if (result == null) { return ErrorEval.NULL_INTERSECTION; } return result; } catch (EvaluationException e) { return e.getErrorEval(); } }
/** * * @return the de-referenced criteria arg (possibly {@link ErrorEval}) */ private static ValueEval evaluateCriteriaArg(ValueEval arg, int srcRowIndex, int srcColumnIndex) { try { return OperandResolver.getSingleValue(arg, srcRowIndex, srcColumnIndex); } catch (EvaluationException e) { return e.getErrorEval(); } } /**
private static int evaluateIntArg(ValueEval arg, int srcCellRow, int srcCellCol) throws EvaluationException { ValueEval ve = OperandResolver.getSingleValue(arg, srcCellRow, (short) srcCellCol); return OperandResolver.coerceValueToInt(ve); } }
private ValueEval unwrapEval(ValueEval eval) { ValueEval comp = eval; while (comp instanceof RefEval) { RefEval ref = (RefEval) comp; comp = ref.getInnerValueEval(ref.getFirstSheetIndex()); } return comp; } /**
public RefValueArray(RefEval ref) { super(ref.getNumberOfSheets()); _ref = ref; _width = ref.getNumberOfSheets(); } protected ValueEval getItemInternal(int index) {
public ValueEval evaluate(int srcRowIndex, int srcColumnIndex, ValueEval arg0) { double d; try { ValueEval ve = OperandResolver.getSingleValue(arg0, srcRowIndex, srcColumnIndex); d = OperandResolver.coerceValueToDouble(ve); } catch (EvaluationException e) { return e.getErrorEval(); } if (d == 0.0) { // this '==' matches +0.0 and -0.0 return NumberEval.ZERO; } return new NumberEval(d / 100); } }
private static AreaEval convertRangeArg(ValueEval eval) throws EvaluationException { if (eval instanceof AreaEval) { return (AreaEval) eval; } if (eval instanceof RefEval) { return ((RefEval)eval).offset(0, 0, 0, 0); } throw new EvaluationException(ErrorEval.VALUE_INVALID); }
public static int evaluateFirstArg(ValueEval arg0, int srcRowIndex, int srcColumnIndex) throws EvaluationException { ValueEval ev = OperandResolver.getSingleValue(arg0, srcRowIndex, srcColumnIndex); return OperandResolver.coerceValueToInt(ev); } }
public final ValueEval evaluate(int srcRowIndex, int srcColumnIndex, ValueEval arg0) { double val; try { ValueEval ve = OperandResolver.getSingleValue(arg0, srcRowIndex, srcColumnIndex); val = OperandResolver.coerceValueToDouble(ve); } catch (EvaluationException e) { return e.getErrorEval(); } if (val < 0) { return ErrorEval.NUM_ERROR; } return new NumberEval(getCalField(val)); }
protected static AreaEval convertRangeArg(ValueEval eval) throws EvaluationException { if (eval instanceof AreaEval) { return (AreaEval) eval; } if (eval instanceof RefEval) { return ((RefEval)eval).offset(0, 0, 0, 0); } throw new EvaluationException(ErrorEval.VALUE_INVALID); }