Package org.joni

Class Parser

  • All Implemented Interfaces:
    org.jcodings.exception.ErrorMessages, ErrorMessages
    Direct Known Subclasses:
    Analyser

    class Parser
    extends Lexer
    • Field Detail

      • 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:
        Constant Field Values
      • POSIX_BRACKET_CHECK_LIMIT_LENGTH

        private static final int POSIX_BRACKET_CHECK_LIMIT_LENGTH
        See Also:
        Constant Field Values
      • BRACKET_END

        private static final byte[] BRACKET_END
    • Constructor Detail

      • Parser

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

      • 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()
      • parseEncloseNamedGroup2

        private Node parseEncloseNamedGroup2​(boolean listCapture)
      • findStrPosition

        private int findStrPosition​(int[] s,
                                    int n,
                                    int from,
                                    int to,
                                    org.jcodings.Ptr nextChar)
      • 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)
      • parseSubExpError

        private void parseSubExpError​(TokenType term)
      • parseRegexp

        private Node parseRegexp()