Package org.eclipse.m2m.atl.emftvm.impl
Class RuleImpl.AutomaticRecursiveState
- java.lang.Object
-
- org.eclipse.m2m.atl.emftvm.impl.RuleImpl.RuleModeState
-
- org.eclipse.m2m.atl.emftvm.impl.RuleImpl.AutomaticRecursiveState
-
- Enclosing class:
- RuleImpl
protected class RuleImpl.AutomaticRecursiveState extends RuleImpl.RuleModeState
RuleImpl.RuleModeState
class for rules with modeRuleMode.AUTOMATIC_RECURSIVE
.
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
AutomaticRecursiveState()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
matchFor(StackFrame frame, java.lang.Object[] values)
Matches this rule againstvalues
, and records a match inExecEnv.getMatches()
in case of a match.boolean
matchFor(StackFrame frame, java.util.Map<java.lang.String,java.lang.Object> valuesMap, java.lang.Object[] values)
Matches this rule againstvalues
, and records a match inExecEnv.getMatches()
in case of a match.boolean[]
matchRecursive(StackFrame frame)
Matches#getRule()
for the automatic recursive stage, if applicable.-
Methods inherited from class org.eclipse.m2m.atl.emftvm.impl.RuleImpl.RuleModeState
matchManual, matchSingle
-
-
-
-
Method Detail
-
matchRecursive
public boolean[] matchRecursive(StackFrame frame)
Matches#getRule()
for the automatic recursive stage, if applicable.- Overrides:
matchRecursive
in classRuleImpl.RuleModeState
- Parameters:
frame
- the stack frame in which to execute the matcher- Returns:
true
iff the rule has any matches
-
matchFor
public boolean matchFor(StackFrame frame, java.lang.Object[] values)
Matches this rule againstvalues
, and records a match inExecEnv.getMatches()
in case of a match. In case of a unique rule, this method will not match if the rule has already matched againstvalues
before.- Specified by:
matchFor
in classRuleImpl.RuleModeState
- Parameters:
frame
- the stack frame contextvalues
- the source values to match against- Returns:
true
iff this rule matches againstvalues
-
matchFor
public boolean matchFor(StackFrame frame, java.util.Map<java.lang.String,java.lang.Object> valuesMap, java.lang.Object[] values)
Matches this rule againstvalues
, and records a match inExecEnv.getMatches()
in case of a match. In case of a unique rule, this method will not match if the rule has already matched againstvalues
before.- Specified by:
matchFor
in classRuleImpl.RuleModeState
- Parameters:
frame
- the stack frame contextvaluesMap
- the map of all values, including super-rule elementsvalues
- the source values to match against- Returns:
true
iff this rule matches againstvalues
-
-