Package org.joni

Class Parser

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

    class Parser
    extends Lexer
    • Field Detail

      • 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​(Regex regex,
                         Syntax syntax,
                         byte[] bytes,
                         int p,
                         int end,
                         WarnCallback warnings)
    • Method Detail

      • codeExistCheck

        private boolean codeExistCheck​(int code,
                                       boolean ignoreEscaped)
      • parseEncloseNamedGroup2

        private Node parseEncloseNamedGroup2​(boolean listCapture)
      • findStrPosition

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

        private Node parseLineBreak()
      • addPropertyToCC

        private void addPropertyToCC​(CClassNode cc,
                                     org.jcodings.unicode.UnicodeCodeRange range,
                                     boolean not)
      • createPropertyNode

        private void createPropertyNode​(Node[] nodes,
                                        int np,
                                        org.jcodings.unicode.UnicodeCodeRange range)
      • quantifierNode

        private void quantifierNode​(Node[] nodes,
                                    int np,
                                    int lower,
                                    int upper)
      • quantifierPropertyNode

        private void quantifierPropertyNode​(Node[] nodes,
                                            int np,
                                            org.jcodings.unicode.UnicodeCodeRange range,
                                            char repetitions)
      • createNodeFromArray

        private void createNodeFromArray​(boolean list,
                                         Node[] nodes,
                                         int np,
                                         int nodeArray)
      • createNodeFromArray

        private ListNode createNodeFromArray​(Node[] nodes,
                                             int nodeArray)
      • parseExtendedGraphemeCluster

        private Node parseExtendedGraphemeCluster()
      • parseExpTkByte

        private Node parseExpTkByte​(boolean group)
      • parseStringLoop

        private Node parseStringLoop​(StringNode node,
                                     boolean group)
      • parseExpTkRawByte

        private Node parseExpTkRawByte​(boolean group)
      • parseExpRepeat

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

        private Node parseExpRepeatForCar​(Node top,
                                          ListNode target,
                                          boolean group)
      • isInvalidQuantifier

        private boolean isInvalidQuantifier​(Node node)
      • parseQuoteOpen

        private Node parseQuoteOpen()
      • parseCharType

        private Node parseCharType​(Node node)
      • parseCharProperty

        private Node parseCharProperty()
      • parseAnycharAnytime

        private Node parseAnycharAnytime()
      • parseBackref

        private Node parseBackref()
      • newBackRef

        private BackRefNode newBackRef​(int[] backRefs)
      • parseCall

        private Node parseCall()
      • parseSubExpError

        private void parseSubExpError​(TokenType term)
      • parseRegexp

        protected final Node parseRegexp()