Class Scanner

  • Direct Known Subclasses:
    Parser


    public class Scanner
    extends java.lang.Object
    The Class Scanner.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected char fCurrentChar  
      protected int fCurrentColumnStartPosition  
      protected int fCurrentPosition  
      protected org.matheclipse.parser.client.ast.IParserFactory fFactory  
      protected java.lang.String fInputString  
      protected java.lang.String fOperatorString  
      protected java.util.List<org.matheclipse.parser.client.operator.Operator> fOperList  
      protected int fToken  
      protected int numFormat  
      protected int rowCount
      Row counter for syntax errors.
      static int TT_ARGUMENTS_CLOSE
      Token type: closing bracket for function arguments.
      static int TT_ARGUMENTS_OPEN
      Token type: opening bracket for function arguments.
      static int TT_BLANK
      Token type: pattern placeholder '_'.
      static int TT_COMMA
      ',' operator.
      static int TT_DIGIT
      Token type: digit 0,1,2,3,4,5,6,7,8,9.
      static int TT_EOF
      Token type: End-of_File.
      static int TT_FLOATING_POINT
      Token type: floating point number.
      static int TT_IDENTIFIER
      Token type: identifier name.
      static int TT_LIST_CLOSE
      Token type: closing curly braces '}' for ending lists.
      static int TT_LIST_OPEN
      Token type: opening curly braces '{' for starting lists.
      static int TT_OPERATOR
      Token type: operator found in input string.
      static int TT_PARTCLOSE
      Token type: closing brackets for ending the "index part" of an expression.
      static int TT_PARTOPEN
      Token type: opening brackets for starting the "index part" of an expression.
      static int TT_PERCENT
      '%' operator.
      static int TT_PRECEDENCE_CLOSE
      Token type: closing bracket ')' for sub-formulas with higher precedence.
      static int TT_PRECEDENCE_OPEN
      Token type: opening bracket '(' for sub-formulas with higher precedence.
      static int TT_SLOT
      Token type: slot #.
      static int TT_SLOTSEQUENCE
      Token type: slot sequence ##.
      static int TT_STRING
      Token type: string surrounded by "...."
    • Constructor Summary

      Constructors 
      Constructor Description
      Scanner​()
      Initialize Scanner without a math-expression.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected java.lang.String getIdentifier​()
      Gets the identifier.
      protected void getNextToken​()
      getNextToken
      protected java.lang.Object[] getNumberString​()
      Gets the number string.
      protected java.util.List<org.matheclipse.parser.client.operator.Operator> getOperator​()
      getOperator.
      protected java.lang.StringBuffer getStringBuffer​()
      Gets the string buffer.
      protected void initialize​(java.lang.String s)
      Initialize.
      protected void throwSyntaxError​(java.lang.String error)
      Throw syntax error.
      protected void throwSyntaxError​(java.lang.String error, int errorLength)
      Throw syntax error.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • fInputString

        protected java.lang.String fInputString
      • fCurrentChar

        protected char fCurrentChar
      • fCurrentPosition

        protected int fCurrentPosition
      • fToken

        protected int fToken
      • fOperatorString

        protected java.lang.String fOperatorString
      • fOperList

        protected java.util.List<org.matheclipse.parser.client.operator.Operator> fOperList
      • rowCount

        protected int rowCount
        Row counter for syntax errors.
      • fCurrentColumnStartPosition

        protected int fCurrentColumnStartPosition
      • TT_FLOATING_POINT

        public static final int TT_FLOATING_POINT
        Token type: floating point number.
        See Also:
        Constant Field Values
      • TT_ARGUMENTS_OPEN

        public static final int TT_ARGUMENTS_OPEN
        Token type: opening bracket for function arguments.
        See Also:
        Constant Field Values
      • TT_ARGUMENTS_CLOSE

        public static final int TT_ARGUMENTS_CLOSE
        Token type: closing bracket for function arguments.
        See Also:
        Constant Field Values
      • TT_PRECEDENCE_OPEN

        public static final int TT_PRECEDENCE_OPEN
        Token type: opening bracket '(' for sub-formulas with higher precedence.
        See Also:
        Constant Field Values
      • TT_PRECEDENCE_CLOSE

        public static final int TT_PRECEDENCE_CLOSE
        Token type: closing bracket ')' for sub-formulas with higher precedence.
        See Also:
        Constant Field Values
      • TT_LIST_OPEN

        public static final int TT_LIST_OPEN
        Token type: opening curly braces '{' for starting lists.
        See Also:
        Constant Field Values
      • TT_LIST_CLOSE

        public static final int TT_LIST_CLOSE
        Token type: closing curly braces '}' for ending lists.
        See Also:
        Constant Field Values
      • TT_PARTOPEN

        public static final int TT_PARTOPEN
        Token type: opening brackets for starting the "index part" of an expression.
        See Also:
        Constant Field Values
      • TT_PARTCLOSE

        public static final int TT_PARTCLOSE
        Token type: closing brackets for ending the "index part" of an expression.
        See Also:
        Constant Field Values
      • TT_OPERATOR

        public static final int TT_OPERATOR
        Token type: operator found in input string.
        See Also:
        Constant Field Values
      • TT_STRING

        public static final int TT_STRING
        Token type: string surrounded by "...."
        See Also:
        Constant Field Values
      • TT_BLANK

        public static final int TT_BLANK
        Token type: pattern placeholder '_'.
        See Also:
        Constant Field Values
      • TT_IDENTIFIER

        public static final int TT_IDENTIFIER
        Token type: identifier name.
        See Also:
        Constant Field Values
      • TT_DIGIT

        public static final int TT_DIGIT
        Token type: digit 0,1,2,3,4,5,6,7,8,9.
        See Also:
        Constant Field Values
      • TT_SLOTSEQUENCE

        public static final int TT_SLOTSEQUENCE
        Token type: slot sequence ##.
        See Also:
        Constant Field Values
      • numFormat

        protected int numFormat
      • fFactory

        protected org.matheclipse.parser.client.ast.IParserFactory fFactory
    • Constructor Detail

      • Scanner

        public Scanner​()
        Initialize Scanner without a math-expression.
    • Method Detail

      • initialize

        protected void initialize​(java.lang.String s)
                           throws SyntaxError
        Initialize.
        Parameters:
        s - the s
        Throws:
        SyntaxError - the syntax error
      • getOperator

        protected java.util.List<org.matheclipse.parser.client.operator.Operator> getOperator​()
        getOperator.
        Returns:
        the operator
      • getNextToken

        protected void getNextToken​()
                             throws SyntaxError
        getNextToken
        Throws:
        SyntaxError - if any.
      • throwSyntaxError

        protected void throwSyntaxError​(java.lang.String error)
                                 throws SyntaxError
        Throw syntax error.
        Parameters:
        error - the error
        Throws:
        SyntaxError - the syntax error
      • throwSyntaxError

        protected void throwSyntaxError​(java.lang.String error,
                                        int errorLength)
                                 throws SyntaxError
        Throw syntax error.
        Parameters:
        error - the error
        errorLength - the error length
        Throws:
        SyntaxError - the syntax error
      • getIdentifier

        protected java.lang.String getIdentifier​()
        Gets the identifier.
        Returns:
        the identifier
      • getNumberString

        protected java.lang.Object[] getNumberString​()
        Gets the number string.
        Returns:
        the number string
      • getStringBuffer

        protected java.lang.StringBuffer getStringBuffer​()
                                                  throws SyntaxError
        Gets the string buffer.
        Returns:
        the string buffer
        Throws:
        SyntaxError - the syntax error