package org.simantics.spreadsheet.solver.formula; import org.simantics.spreadsheet.solver.formula.parser.ast.AstArgList; public class IfErrorFormulaFunction implements CellFormulaFunction { @Override public Object evaluate(CellValueVisitor visitor, AstArgList args) { if (args.values.size() != 2) throw new IllegalStateException(); Object condition = args.values.get(0).accept(visitor); FormulaError2 error = FormulaError2.forObject(condition); if(error!=null) return error.getString(); else return condition; } }