Class StatementRule
- java.lang.Object
-
- com.singularsys.extensions.structure.StatementRule
-
- All Implemented Interfaces:
GrammaticalRuleI
,GrammarMatcher
,java.io.Serializable
public class StatementRule extends java.lang.Object implements GrammaticalRuleI
Parse a single statement from a list of possibilities.<StatementRule> ::= | <expression1> | <JavaWhileRule2> | ....
Returns the result of the first successful statement parsed.- Author:
- Richard Morris
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description StatementRule()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
addRule(GrammaticalRuleI rule)
Adds a new rule.java.util.List<GrammaticalRuleI>
getRules()
The list of rulesvoid
init(Jep jep)
Delayed initialisation, this methods is called whenever components of the jep instance are changed.Node
match(Lookahead2Iterator<Token> it, GrammarParser parser)
Attempt to parse the input using the rule
-
-
-
Method Detail
-
addRule
public boolean addRule(GrammaticalRuleI rule)
Adds a new rule.- Parameters:
rule
- the rule to be added.- Returns:
- true
-
getRules
public java.util.List<GrammaticalRuleI> getRules()
The list of rules- Returns:
- the list of rules.
-
match
public Node match(Lookahead2Iterator<Token> it, GrammarParser parser) throws ParseException
Description copied from interface:GrammaticalRuleI
Attempt to parse the input using the rule- Specified by:
match
in interfaceGrammarMatcher
- Specified by:
match
in interfaceGrammaticalRuleI
- Parameters:
it
- iterator with tokens to parseparser
- the parser to parse any components of the rule- Returns:
- successful parses should return a Node, null if unsuccessful
- Throws:
ParseException
- if there is a syntactical error
-
init
public void init(Jep jep)
Description copied from interface:GrammarMatcher
Delayed initialisation, this methods is called whenever components of the jep instance are changed.- Specified by:
init
in interfaceGrammarMatcher
- Parameters:
jep
- the current jep instance.
-
-