public class PatternMatcherAndEvaluator extends PatternMatcher implements java.io.Externalizable
PatternMatcher.OrderlessMatcher, PatternMatcher.StackMatcherfPatternCondition, fPatternMap, fPriorityfLhsPatternExpr| Constructor and Description |
|---|
PatternMatcherAndEvaluator()
Public constructor for serialization.
|
PatternMatcherAndEvaluator(IExpr leftHandSide,
IExpr rightHandSide)
Define a pattern-matching rule.
|
PatternMatcherAndEvaluator(ISymbol.RuleType setSymbol,
IExpr leftHandSide,
IExpr rightHandSide)
ine a pattern-matching rule.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
checkRHSCondition(EvalEngine engine)
Check if the condition for the right-hand-sides
Module[] or Condition[] expressions evaluates to
true. |
java.lang.Object |
clone() |
boolean |
equals(java.lang.Object obj) |
int |
equivalent(IPatternMatcher obj) |
IExpr |
eval(IExpr leftHandSide)
Match the given left-hand-side and return an evaluated expression
|
IAST |
getAsAST() |
IExpr |
getRHS()
Get the "right-hand-side" of a pattern-matching rule.
|
ISymbol |
getSetSymbol()
Return
Set or SetDelayed symbol. |
int |
hashCode() |
void |
readExternal(java.io.ObjectInput objectInput) |
java.lang.String |
toString() |
void |
writeExternal(java.io.ObjectOutput objectOutput) |
checkCondition, compareTo, equivalent, evalAST, evalLeftHandSide, evalLeftHandSide, getCondition, getPatterns, getPatternValue0, getPriority, init, isRuleWithoutPatterns, logConditionFalse, matchAST, matchExpr, matchExpr, setCondition, testgetLHSpublic PatternMatcherAndEvaluator()
public PatternMatcherAndEvaluator(IExpr leftHandSide, IExpr rightHandSide)
leftHandSide - could contain pattern expressions for "pattern-matching"rightHandSide - the result which should be evaluated if the "pattern-matching"
succeedspublic PatternMatcherAndEvaluator(ISymbol.RuleType setSymbol, IExpr leftHandSide, IExpr rightHandSide)
setSymbol - the symbol which defines this pattern-matching rule (i.e. Set,
SetDelayed,...)leftHandSide - could contain pattern expressions for "pattern-matching"rightHandSide - the result which should be evaluated if the "pattern-matching"
succeedspublic java.lang.Object clone()
throws java.lang.CloneNotSupportedException
clone in class PatternMatcherjava.lang.CloneNotSupportedExceptionpublic boolean equals(java.lang.Object obj)
equals in class PatternMatcherpublic int hashCode()
hashCode in class PatternMatcherpublic boolean checkRHSCondition(EvalEngine engine)
Module[] or Condition[] expressions evaluates to
true.checkRHSCondition in class PatternMatchertrue if the right-hand-sides condition is fulfilled.checkRHSCondition(EvalEngine)public IExpr eval(IExpr leftHandSide)
eval in class PatternMatcherleftHandSide - left-hand-side expressionF.NIL if the match wasn't successful, the evaluated
expression otherwise.public IExpr getRHS()
IPatternMatchergetRHS in class IPatternMatcherF.NIL if no right-hand-side is defined for the
pattern matcherpublic IAST getAsAST()
public ISymbol getSetSymbol()
Set or SetDelayed symbol.null if no symbol was definedpublic int equivalent(IPatternMatcher obj)
equivalent in class PatternMatcherpublic java.lang.String toString()
toString in class java.lang.Objectpublic void writeExternal(java.io.ObjectOutput objectOutput)
throws java.io.IOException
writeExternal in interface java.io.ExternalizablewriteExternal in class PatternMatcherjava.io.IOExceptionpublic void readExternal(java.io.ObjectInput objectInput)
throws java.io.IOException,
java.lang.ClassNotFoundException
readExternal in interface java.io.ExternalizablereadExternal in class PatternMatcherjava.io.IOExceptionjava.lang.ClassNotFoundException