Package org.joni

Class Parser

java.lang.Object
org.jcodings.IntHolder
All Implemented Interfaces:
org.jcodings.exception.ErrorMessages, ErrorMessages
Direct Known Subclasses:
Analyser

class Parser extends Lexer
  • Field Details

    • regex

      protected final Regex regex
    • root

      protected Node root
    • returnCode

      protected int returnCode
    • POSIX_BRACKET_NAME_MIN_LEN

      private static final int POSIX_BRACKET_NAME_MIN_LEN
      See Also:
    • POSIX_BRACKET_CHECK_LIMIT_LENGTH

      private static final int POSIX_BRACKET_CHECK_LIMIT_LENGTH
      See Also:
    • BRACKET_END

      private static final byte[] BRACKET_END
  • Constructor Details

    • Parser

      protected Parser(ScanEnvironment env, byte[] bytes, int p, int end)
  • Method Details

    • parse

      protected final Node parse()
    • parsePosixBracket

      private boolean parsePosixBracket(CClassNode cc)
    • parseCharProperty

      private CClassNode parseCharProperty()
    • codeExistCheck

      private boolean codeExistCheck(int code, boolean ignoreEscaped)
    • parseCharClass

      private CClassNode parseCharClass()
    • parseCharClassSbChar

      private void parseCharClassSbChar(CClassNode cc, CClassNode.CCStateArg arg)
    • parseCharClassRangeEndVal

      private void parseCharClassRangeEndVal(CClassNode cc, CClassNode.CCStateArg arg)
    • parseCharClassValEntry

      private void parseCharClassValEntry(CClassNode cc, CClassNode.CCStateArg arg)
    • parseCharClassValEntry2

      private void parseCharClassValEntry2(CClassNode cc, CClassNode.CCStateArg arg)
    • parseEnclose

      private Node parseEnclose(TokenType term)
    • parseEncloseNamedGroup2

      private Node parseEncloseNamedGroup2(boolean listCapture)
    • findStrPosition

      private int findStrPosition(int[] s, int n, int from, int to, org.jcodings.Ptr nextChar)
    • parseExp

      private Node parseExp(TokenType term)
    • parseExpTkByte

      private Node parseExpTkByte(boolean group)
    • parseExpTkRawByte

      private Node parseExpTkRawByte(boolean group)
    • parseExpRepeat

      private Node parseExpRepeat(Node target, boolean group)
    • parseExpRepeatForCar

      private Node parseExpRepeatForCar(Node top, ConsAltNode target, boolean group)
    • parseBranch

      private Node parseBranch(TokenType term)
    • parseSubExp

      private Node parseSubExp(TokenType term)
    • parseSubExpError

      private void parseSubExpError(TokenType term)
    • parseRegexp

      private Node parseRegexp()