Package snap.parse

Class GrammarParser

java.lang.Object
snap.parse.Parser
snap.parse.GrammarParser

public class GrammarParser extends Parser
A Parser to parse simple snap grammar rule files.
  • Constructor Details

    • GrammarParser

      public GrammarParser()
      Constructor.
  • Method Details

    • parseGrammarString

      public Grammar parseGrammarString(String grammarStr)
      Parses given grammar string and returns grammar.
    • createGrammar

      protected Grammar createGrammar()
      Creates a new ParseRule rule.
      Grammar { ParseRule* } ParseRule { Name "{" Expression "}" } Expression { AndExpr ( "|" AndExpr )* } AndExpr { CountExpr CountExpr* } CountExpr { Primary ( "*" "+" "?" )? } Primary { String | "LookAhead" "(" (Number | Expression) ")" | Name | "(" Expression ")"
      Overrides:
      createGrammar in class Parser
    • createTokenizer

      protected Tokenizer createTokenizer()
      Override to allow rules files to have standard Java single/multiple line comments.
      Overrides:
      createTokenizer in class Parser