001/** 002 * 003 */ 004package csheets.core.formula.lang; 005 006import csheets.core.*; 007import csheets.core.formula.*; 008 009/** 010 * Class for eval expressions 011 * 012 * @author Andre 013 * 014 */ 015public class Eval implements Function { 016 017 /** the function parameters */ 018 public static final FunctionParameter[] parameters = new FunctionParameter[] { new FunctionParameter( 019 Value.Type.TEXT, "Expression", false, 020 "An expression to evaluated in eval") }; 021 022 @Override 023 public String getIdentifier() { 024 return "EVAL"; 025 } 026 027 @Override 028 public Value applyTo(Expression[] args) throws IllegalValueTypeException { 029 return args[0].evaluate(); 030 } 031 032 @Override 033 public FunctionParameter[] getParameters() { 034 return parameters; 035 } 036 037 @Override 038 public boolean isVarArg() { 039 return true; 040 } 041}