类 Tokenizer

java.lang.Object
cn.taketoday.expression.spel.standard.Tokenizer

final class Tokenizer extends Object
Lex some input data into a stream of tokens that can then be parsed.
从以下版本开始:
4.0
作者:
Andy Clement, Juergen Hoeller, Phillip Webb, Harry Yang
  • 字段详细资料

    • ALTERNATIVE_OPERATOR_NAMES

      private static final String[] ALTERNATIVE_OPERATOR_NAMES
    • FLAGS

      private static final byte[] FLAGS
    • IS_DIGIT

      private static final byte IS_DIGIT
      另请参阅:
    • IS_HEXDIGIT

      private static final byte IS_HEXDIGIT
      另请参阅:
    • expressionString

      private final String expressionString
    • charsToProcess

      private final char[] charsToProcess
    • pos

      private int pos
    • max

      private final int max
    • tokens

      private final ArrayList<Token> tokens
  • 构造器详细资料

    • Tokenizer

      public Tokenizer(String inputData)
  • 方法详细资料

    • process

      public List<Token> process()
    • lexQuotedStringLiteral

      private void lexQuotedStringLiteral()
    • lexDoubleQuotedStringLiteral

      private void lexDoubleQuotedStringLiteral()
    • lexNumericLiteral

      private void lexNumericLiteral(boolean firstCharIsZero)
    • lexIdentifier

      private void lexIdentifier()
    • pushIntToken

      private void pushIntToken(char[] data, boolean isLong, int start, int end)
    • pushHexIntToken

      private void pushHexIntToken(char[] data, boolean isLong, int start, int end)
    • pushRealToken

      private void pushRealToken(char[] data, boolean isFloat, int start, int end)
    • subarray

      private char[] subarray(int start, int end)
    • isTwoCharToken

      private boolean isTwoCharToken(TokenKind kind)
      Check if this might be a two character token.
    • pushCharToken

      private void pushCharToken(TokenKind kind)
      Push a token of just one character in length.
    • pushPairToken

      private void pushPairToken(TokenKind kind)
      Push a token of two characters in length.
    • pushOneCharOrTwoCharToken

      private void pushOneCharOrTwoCharToken(TokenKind kind, int pos, char[] data)
    • isIdentifier

      private boolean isIdentifier(char ch)
    • isChar

      private boolean isChar(char a, char b)
    • isExponentChar

      private boolean isExponentChar(char ch)
    • isFloatSuffix

      private boolean isFloatSuffix(char ch)
    • isDoubleSuffix

      private boolean isDoubleSuffix(char ch)
    • isSign

      private boolean isSign(char ch)
    • isDigit

      private boolean isDigit(char ch)
    • isAlphabetic

      private boolean isAlphabetic(char ch)
    • isHexadecimalDigit

      private boolean isHexadecimalDigit(char ch)
    • isExhausted

      private boolean isExhausted()
    • raiseParseException

      private void raiseParseException(int start, SpelMessage msg, Object... inserts)