Package org.esa.snap.core.jexp
Interface Function
-
public interface FunctionA representation of a function. A function has a name, a return type and can be evaluated by passing a number of arguments to it.Within an expression, a reference to a function is created if the parser encounters a name followed by an argument list and the name can be resolved through the parser's current namespace. The resulting term in this case is an instance of
.Term.Call- Version:
- $Revision$ $Date$
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description booleanevalB(EvalEnv env, Term[] args)Evaluates this function to abooleanvalue.doubleevalD(EvalEnv env, Term[] args)Evaluates this function to adoublevalue.intevalI(EvalEnv env, Term[] args)Evaluates this function to anintvalue.intgetArgType(int argIndex)Gets the type of a function's i-th argument.StringgetName()Gets the function's name.intgetNumArgs()Gets the function's number of arguments.intgetRetType()Gets the function's return type.booleanisConst(Term[] args)
-
-
-
Method Detail
-
getName
String getName()
Gets the function's name.- Returns:
- the name, should never be
null.
-
getRetType
int getRetType()
Gets the function's return type.- Returns:
- the type, should always be one of the
TYPE_X constants defined in theTermclass.
-
getNumArgs
int getNumArgs()
Gets the function's number of arguments.- Returns:
- number of arguments.
-
getArgType
int getArgType(int argIndex)
Gets the type of a function's i-th argument.- Parameters:
argIndex- The argument index.- Returns:
- an arry of types, each element should always be one of
the
TYPE_X constants defined in theTermclass.
-
evalB
boolean evalB(EvalEnv env, Term[] args) throws EvalException
Evaluates this function to abooleanvalue.- Parameters:
env- the application dependant environment.args- the (un-evaluated) arguments passed to the function- Returns:
- a
booleanvalue - Throws:
EvalException- if the evaluation fails
-
evalI
int evalI(EvalEnv env, Term[] args) throws EvalException
Evaluates this function to anintvalue.- Parameters:
env- the application dependant environment.args- the (un-evaluated) arguments passed to the function- Returns:
- an
intvalue - Throws:
EvalException- if the evaluation fails
-
evalD
double evalD(EvalEnv env, Term[] args) throws EvalException
Evaluates this function to adoublevalue.- Parameters:
env- the application dependant environment.args- the (un-evaluated) arguments passed to the function- Returns:
- a
doublevalue - Throws:
EvalException- if the evaluation fails
-
-