|
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
A symbolic expression in the EL language. An expression "contains" all of its subexpressions. An expression can appear in exactly one other expression; they are never shared between expressions. An expression cannot be mutated (to allow future expansion to expression sharing).
ELExpression := ELCall | ELScalar | ELVector ELCall := (ELOperator ELExpression*)
Method Summary | |
java.lang.Object |
clone()
|
ELExpression |
cloneWithReplacement(ELExpression expression,
int position)
Creates a perfect clone with expression substitited for node at position. |
void |
evaluate(ELMatrix out,
ELEnvironment environment)
Evaluates this expression. |
ELExpression |
geneticClone(ELCall parent,
GeneticParameters gp)
Clones, possibly mutating. |
ELExpression |
getNestedSubexpression(int targetNumber)
|
boolean |
hasExternalInfluences()
Returns true if the output is influenced by the environment. |
int |
numNestedSubexpressions()
The total number of nodes (including this one) below this expression. |
ELExpression |
randomNestedSubexpression()
Chooses a nested subexpression of this expression (possibly the expression itself) and returns a pointer to it (not a clone) |
boolean |
sameExpression(ELExpression other)
Return true if this and other are equivalent expressions (unparse to the same value). |
java.lang.String |
unparse()
Generates an EL language source string sufficient to uniquely identify this expression. |
Method Detail |
public int numNestedSubexpressions()
public ELExpression geneticClone(ELCall parent, GeneticParameters gp)
parent
- Parent expression from previous generation. don't
point at or mutate this; it is provided so you can get access to
siblings. May be null if there is no parent (i.e. top-level
expression).public boolean hasExternalInfluences()
public ELExpression cloneWithReplacement(ELExpression expression, int position)
expression
- Is not cloned.public ELExpression randomNestedSubexpression()
public ELExpression getNestedSubexpression(int targetNumber)
public java.lang.String unparse()
public boolean sameExpression(ELExpression other)
public void evaluate(ELMatrix out, ELEnvironment environment)
public java.lang.Object clone()
clone
in class java.lang.Object
|
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |