Class JavaWhileRule

java.lang.Object
com.singularsys.extensions.structure.JavaWhileRule
All Implemented Interfaces:
GrammaticalRuleI, GrammarMatcher, Serializable

public class JavaWhileRule extends Object implements GrammaticalRuleI
Parse a Java-style while loop while(x<10) x=x+1;
 <JavaWhileRule> ::=
         <while> <open> <expression> <close> <statement>
 
A successful parse will return a LoopNode.
See Also:
  • Constructor Details

    • JavaWhileRule

      public JavaWhileRule(SymbolToken whileToken, SymbolToken open, GrammaticalRuleI expression, SymbolToken close, GrammaticalRuleI statement)
      Parameters:
      whileToken - token for the while symbol
      open - opening bracket
      expression - rule to parse an expression
      close - closing bracket
      statement - rule to parse a statement
  • Method Details

    • 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 interface GrammarMatcher
      Specified by:
      match in interface GrammaticalRuleI
      Parameters:
      it - iterator with tokens to parse
      parser - 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 method is called whenever components of the jep instance are changed.
      Specified by:
      init in interface GrammarMatcher
      Parameters:
      jep - the current jep instance.