com.singularsys.jep.configurableparser.matchers

## Interface GrammarMatcher

- All Superinterfaces:
    java.io.Serializable
  All Known Implementing Classes:
    ArrayAccessGrammarMatcher, FunctionGrammarMatcher, ListGrammarMatcher, ListOrBracketGrammarMatcher, OperatorAsFunctionGrammarMatcher, RoundBracketGrammarMatcher, SingleArgFunctionMatcher

      public interface GrammarMatcher
      extends java.io.Serializable

  Interface defining matchers for custom grammatical elements. GrammarMatchers match syntax elements at the same precedence level as brackets they can examine the next two tokens in the input using the `Lookahead2Iterator` and call the `GrammarParser.parseSubExpression()` to parse expression fragments.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `init(Jep jep)` Delayed initialisation, this methods is called whenever components of the jep instance are changed.
    `Node` | `match(Lookahead2Iterator<Token> it, GrammarParser parser)` Test whether the input matches this pattern.

- - ### Method Detail

    - #### match

          Node match(Lookahead2Iterator<Token> it,
                     GrammarParser parser)
              throws ParseException

      Test whether the input matches this pattern.
      Parameters:
        `it` - An iterator inspecting the input
        `parser` - the parser to use when evaluating sub expressions
      Returns:
        if matched returns a node representing the content, return null is does not match
      Throws:
        `ParseException` - if there is a syntactical error in the input.

    - #### init

          void init(Jep jep)

      Delayed initialisation, this methods is called whenever components of the jep instance are changed.
      Parameters:
        `jep` - the current jep instance.

Copyright © 2018 Singular Systems http://www.singularsys.com/jep