Class FunctionGrammarMatcher

java.lang.Object
com.singularsys.jep.configurableparser.matchers.FunctionGrammarMatcher
All Implemented Interfaces:
GrammarMatcher, Serializable

public class FunctionGrammarMatcher extends Object implements GrammarMatcher
A GrammarMatcher which matches functions in the form 'atan2(y,x)'. The function must be in the FunctionTable and brackets are required.
See Also:
  • Constructor Details

    • FunctionGrammarMatcher

      public FunctionGrammarMatcher(Token open, Token close, Token comma)
      Create a FunctionGrammarMatcher
      Parameters:
      open - token representing an opening bracket
      close - token representing a closing bracket
      comma - token representing a list item separator
  • Method Details

    • 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.
    • errorToken

      protected Token errorToken(Lookahead2Iterator<Token> it)
      Generate a token to use in GrammarExceptions
      Parameters:
      it - used to get current position
      Returns:
      a TerminatorToken
    • match

      public Node match(Lookahead2Iterator<Token> it, GrammarParser parser) throws ParseException
      Attempt to match a function, calls the GrammarParser.parseSubExpression() to match function arguments.
      Specified by:
      match in interface GrammarMatcher
      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.