Package org.esa.snap.core.jexp
The JEXP API (JEXP = Java Expression Parser).
It defines the abstract
Term
class which plays a central role in the API.-
Interface Summary Interface Description EvalEnv Represents an application dependant evaluation environment.Function A representation of a function.Namespace Namespaces are used by a
in order to resolve to symbol references and function calls.Parser
Parser Instances of theParser
interface are used to convert a code string representing an arithmetic expression in a tree of terms which can then be executed by using one of the evaluation methods of the
class.Term
Symbol Represents a read-only symbol.TermTransformer A term transformer is a term visitor that returns terms.TermVisitor<T> Visitor support for theTerm
class.Variable Represents a variable to which a value can be assigned.WritableNamespace -
Class Summary Class Description AbstractTermTransformer A basic implementation of a term transformer which recursively clones operation and function call terms.Term The abstractTerm
class is an in-memory representation of an element within an arbitrary expression tree.Term.Add The numerical ADD operation: n-term+
n-termTerm.AndB The logical AND operation: b-term&&
b-termTerm.AndI The bitwise AND operation: i-term&
i-termTerm.Assign The assignment operation variable-ref-term=
termTerm.Binary Term.BinaryB An abstract binary (= 2 operands) operation.Term.BinaryI An abstract binary (= 2 operands) operation with a return type ofint
.Term.BinaryN An abstract binary (= 2 operands) operation with a numeric return type.Term.Call A call of a (or reference to a)
.Function
Term.Cond The conditional operation b-term?
term:
termTerm.Const A boolean constant, e.g.Term.ConstB A boolean constant, e.g.Term.ConstD A floating point constant, e.g.Term.ConstI An integer constant, e.g.Term.ConstS Term.Div The numerical DIV operation: n-term/
n-termTerm.EqB The boolean EQ operation: b-term==
b-termTerm.EqD The double EQ operation: d-term==
d-termTerm.EqI The integer EQ operation: i-term==
i-termTerm.GeD The double GE operation: d-term>=
d-termTerm.GeI The integer GE operation: i-term>=
i-termTerm.GtD The double GT operation: d-term>
d-termTerm.GtI The integer GT operation: i-term>
i-termTerm.LeD The double LE operation: d-term<=
d-termTerm.LeI The integer LE operation: i-term<=
i-termTerm.LtD The double LT operation: d-term<
d-termTerm.LtI The integer LT operation: i-term<
i-termTerm.Mod The numerical MOD (modulo) operation: n-term%
n-termTerm.Mul The numerical MUL operation: n-term*
n-termTerm.Neg The numerical NEG operation:-
d-termTerm.NEqB The boolean NEQ operation: b-term!=
b-termTerm.NEqD The double NEQ operation: d-term!=
d-termTerm.NEqI The integer NEQ operation: i-term!=
i-termTerm.NotB The logical NOT operation!
b-termTerm.NotI The bitwise NOT operation:~
i-termTerm.Op An abstract operation.Term.OrB The logical OR operation: b-term||
b-termTerm.OrI The bitwise OR operation: i-term¦
i-termTerm.Ref A reference to a
.Symbol
Term.Sub The numerical SUB operation: n-term-
n-termTerm.Unary An abstract unary (= 1 operand) operation.Term.UnaryB An abstract unary (= 1 operand) operation with return type ofboolean
.Term.UnaryI An abstract unary (= 1 operand) operation with return type ofint
.Term.UnaryN An abstract unary (= 1 operand) operation with a numeric return type.Term.XOrI The bitwise XOR operation: i-term^
i-term -
Exception Summary Exception Description EvalException An exception that can be thrown during the evaluation of a
.Term
ParseException An exception thrown by aParserX.parse()
call in order to signal a parser error.