org.joni
Class Parser
java.lang.Object
org.jcodings.IntHolder
org.joni.ScannerSupport
org.joni.Lexer
org.joni.Parser
- All Implemented Interfaces:
- org.jcodings.exception.ErrorMessages
- Direct Known Subclasses:
- Analyser
class Parser
- extends Lexer
| Fields inherited from class org.jcodings.IntHolder |
value |
| Fields inherited from interface org.joni.exception.ErrorMessages |
ERR_CHAR_CLASS_VALUE_AT_END_OF_RANGE, ERR_CHAR_CLASS_VALUE_AT_START_OF_RANGE, ERR_CONTROL_CODE_SYNTAX, ERR_DEFAULT_ENCODING_IS_NOT_SETTED, ERR_EMPTY_CHAR_CLASS, ERR_EMPTY_GROUP_NAME, ERR_EMPTY_RANGE_IN_CHAR_CLASS, ERR_END_PATTERN_AT_CONTROL, ERR_END_PATTERN_AT_ESCAPE, ERR_END_PATTERN_AT_LEFT_BRACE, ERR_END_PATTERN_AT_LEFT_BRACKET, ERR_END_PATTERN_AT_META, ERR_END_PATTERN_IN_GROUP, ERR_END_PATTERN_WITH_UNMATCHED_PARENTHESIS, ERR_GROUP_NUMBER_OVER_FOR_CAPTURE_HISTORY, ERR_INVALID_ARGUMENT, ERR_INVALID_BACKREF, ERR_INVALID_CHAR_IN_GROUP_NAME, ERR_INVALID_COMBINATION_OF_OPTIONS, ERR_INVALID_GROUP_NAME, ERR_INVALID_LOOK_BEHIND_PATTERN, ERR_INVALID_POSIX_BRACKET_TYPE, ERR_INVALID_REPEAT_RANGE_PATTERN, ERR_INVALID_WIDE_CHAR_VALUE, ERR_MATCH_STACK_LIMIT_OVER, ERR_MEMORY, ERR_META_CODE_SYNTAX, ERR_MISMATCH_CODE_LENGTH_IN_CLASS_RANGE, ERR_MULTIPLEX_DEFINED_NAME, ERR_MULTIPLEX_DEFINITION_NAME_CALL, ERR_NESTED_REPEAT_OPERATOR, ERR_NEVER_ENDING_RECURSION, ERR_NOT_SUPPORTED_ENCODING_COMBINATION, ERR_NUMBERED_BACKREF_OR_CALL_NOT_ALLOWED, ERR_OVER_THREAD_PASS_LIMIT_COUNT, ERR_PARSER_BUG, ERR_PREMATURE_END_OF_CHAR_CLASS, ERR_SPECIFIED_ENCODING_CANT_CONVERT_TO_WIDE_CHAR, ERR_STACK_BUG, ERR_TARGET_OF_REPEAT_OPERATOR_INVALID, ERR_TARGET_OF_REPEAT_OPERATOR_NOT_SPECIFIED, ERR_TOO_BIG_BACKREF_NUMBER, ERR_TOO_BIG_NUMBER, ERR_TOO_BIG_NUMBER_FOR_REPEAT_RANGE, ERR_TOO_BIG_SB_CHAR_VALUE, ERR_TOO_MANY_MULTI_BYTE_RANGES, ERR_TOO_SHORT_MULTI_BYTE_STRING, ERR_TYPE_BUG, ERR_UNDEFINED_BYTECODE, ERR_UNDEFINED_GROUP_OPTION, ERR_UNDEFINED_GROUP_REFERENCE, ERR_UNDEFINED_NAME_REFERENCE, ERR_UNEXPECTED_BYTECODE, ERR_UNMATCHED_CLOSE_PARENTHESIS, ERR_UNMATCHED_RANGE_SPECIFIER_IN_CHAR_CLASS, ERR_UPPER_SMALLER_THAN_LOWER_IN_REPEAT_RANGE, MISMATCH, NO_SUPPORT_CONFIG |
| Fields inherited from interface org.jcodings.exception.ErrorMessages |
ERR_COULD_NOT_REPLICATE, ERR_ENCODING_ALIAS_ALREADY_REGISTERED, ERR_ENCODING_ALREADY_REGISTERED, ERR_ENCODING_CLASS_DEF_NOT_FOUND, ERR_ENCODING_LOAD_ERROR, ERR_ENCODING_REPLICA_ALREADY_REGISTERED, ERR_ILLEGAL_CHARACTER, ERR_INVALID_CHAR_PROPERTY_NAME, ERR_INVALID_CODE_POINT_VALUE, ERR_NO_SUCH_ENCODNG, ERR_TOO_BIG_WIDE_CHAR_VALUE, ERR_TOO_LONG_WIDE_CHAR_VALUE, ERR_TRANSCODER_ALREADY_REGISTERED, ERR_TRANSCODER_CLASS_DEF_NOT_FOUND, ERR_TRANSCODER_LOAD_ERROR |
|
Method Summary |
private boolean |
codeExistCheck(int code,
boolean ignoreEscaped)
|
private int |
findStrPosition(int[] s,
int n,
int from,
int to,
org.jcodings.Ptr nextChar)
|
protected Node |
parse()
|
private Node |
parseBranch(TokenType term)
|
private CClassNode |
parseCharClass()
|
private void |
parseCharClassRangeEndVal(CClassNode cc,
CClassNode.CCStateArg arg)
|
private void |
parseCharClassSbChar(CClassNode cc,
CClassNode.CCStateArg arg)
|
private void |
parseCharClassValEntry(CClassNode cc,
CClassNode.CCStateArg arg)
|
private void |
parseCharClassValEntry2(CClassNode cc,
CClassNode.CCStateArg arg)
|
private CClassNode |
parseCharProperty()
|
private Node |
parseEnclose(TokenType term)
|
private Node |
parseEncloseNamedGroup2(boolean listCapture)
|
private Node |
parseExp(TokenType term)
|
private Node |
parseExpRepeat(Node target,
boolean group)
|
private Node |
parseExpRepeatForCar(Node top,
ConsAltNode target,
boolean group)
|
private Node |
parseExpTkByte(boolean group)
|
private Node |
parseExpTkRawByte(boolean group)
|
private boolean |
parsePosixBracket(CClassNode cc)
|
private Node |
parseRegexp()
|
private Node |
parseSubExp(TokenType term)
|
private void |
parseSubExpError(TokenType term)
|
| Methods inherited from class org.joni.ScannerSupport |
fetch, fetchTo, getBegin, getEnd, inc, left, mark, newInternalException, newSyntaxException, newValueException, newValueException, newValueException, peek, peekIs, reset, restore, scanUnsignedHexadecimalNumber, scanUnsignedNumber, scanUnsignedOctalNumber, unfetch |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
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
Parser
protected Parser(ScanEnvironment env,
byte[] bytes,
int p,
int end)
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()
Copyright © 2013. All Rights Reserved.