Class Lexer
java.lang.Object
org.jcodings.IntHolder
org.joni.ScannerSupport
org.joni.Lexer
- All Implemented Interfaces:
org.jcodings.exception.ErrorMessages, ErrorMessages
- Direct Known Subclasses:
Parser
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final ScanEnvironmentprivate static final int[]protected final Syntaxprotected final TokenFields inherited from class org.jcodings.IntHolder
valueFields 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_ERRORFields inherited from interface 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_NOT_ALLOWED, 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 -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected final intbackrefRelToAbs(int relNo) protected final intprivate intprivate voidprivate voidprotected final intfetchName(int startCode, boolean ref) private intfetchNameForNamedGroup(int startCode, boolean ref) private final intfetchNameForNoNamedGroup(int startCode, boolean ref) private booleanfetchNameWithLevel(int startCode, org.jcodings.Ptr rbackNum, org.jcodings.Ptr rlevel) private intprotected final TokenTypeprivate voidfetchTokenFor_anchor(int subType) private voidprivate voidprivate voidprivate voidprivate voidprivate voidfetchTokenFor_repeat(int lower, int upper) private voidprivate voidprivate voidprivate voidprotected final TokenTypeprivate voidprivate voidfetchTokenInCCFor_charType(boolean flag, int type) private voidprivate voidprivate voidprivate voidprivate voidprivate voidprivate intinvalidRangeQuantifier(boolean synAllow) private intnameEndCodePoint(int start) private voidprivate booleanstrExistCheckWithEsc(int[] s, int n, int bad) protected final voidsyntaxWarn(String message) protected final voidsyntaxWarn(String message, char c) Methods inherited from class ScannerSupport
fetch, fetchTo, getBegin, getEnd, inc, left, mark, newInternalException, newSyntaxException, newValueException, newValueException, newValueException, peek, peekIs, reset, restore, scanUnsignedHexadecimalNumber, scanUnsignedNumber, scanUnsignedOctalNumber, unfetch
-
Field Details
-
env
-
syntax
-
token
-
send
private static final int[] send
-
-
Constructor Details
-
Lexer
-
-
Method Details
-
fetchRangeQuantifier
private int fetchRangeQuantifier()- Returns:
- 0: normal {n,m}, 2: fixed {n} !introduce returnCode here
-
invalidRangeQuantifier
private int invalidRangeQuantifier(boolean synAllow) -
fetchEscapedValue
private int fetchEscapedValue() -
fetchEscapedValueBackSlash
private void fetchEscapedValueBackSlash() -
fetchEscapedValueControl
private void fetchEscapedValueControl() -
nameEndCodePoint
private int nameEndCodePoint(int start) -
fetchNameWithLevel
private boolean fetchNameWithLevel(int startCode, org.jcodings.Ptr rbackNum, org.jcodings.Ptr rlevel) -
fetchNameForNamedGroup
private int fetchNameForNamedGroup(int startCode, boolean ref) -
fetchNameForNoNamedGroup
private final int fetchNameForNoNamedGroup(int startCode, boolean ref) -
fetchName
protected final int fetchName(int startCode, boolean ref) -
strExistCheckWithEsc
private boolean strExistCheckWithEsc(int[] s, int n, int bad) -
fetchTokenInCCFor_charType
private void fetchTokenInCCFor_charType(boolean flag, int type) -
fetchTokenInCCFor_p
private void fetchTokenInCCFor_p() -
fetchTokenInCCFor_x
private void fetchTokenInCCFor_x() -
fetchTokenInCCFor_u
private void fetchTokenInCCFor_u() -
fetchTokenInCCFor_digit
private void fetchTokenInCCFor_digit() -
fetchTokenInCCFor_posixBracket
private void fetchTokenInCCFor_posixBracket() -
fetchTokenInCCFor_and
private void fetchTokenInCCFor_and() -
fetchTokenInCC
-
backrefRelToAbs
protected final int backrefRelToAbs(int relNo) -
fetchTokenFor_repeat
private void fetchTokenFor_repeat(int lower, int upper) -
fetchTokenFor_openBrace
private void fetchTokenFor_openBrace() -
fetchTokenFor_anchor
private void fetchTokenFor_anchor(int subType) -
fetchTokenFor_xBrace
private void fetchTokenFor_xBrace() -
fetchTokenFor_uHex
private void fetchTokenFor_uHex() -
fetchTokenFor_digit
private void fetchTokenFor_digit() -
fetchTokenFor_zero
private void fetchTokenFor_zero() -
fetchTokenFor_namedBackref
private void fetchTokenFor_namedBackref() -
fetchTokenFor_subexpCall
private void fetchTokenFor_subexpCall() -
fetchTokenFor_charProperty
private void fetchTokenFor_charProperty() -
fetchTokenFor_metaChars
private void fetchTokenFor_metaChars() -
fetchToken
-
greedyCheck
private void greedyCheck() -
possessiveCheck
private void possessiveCheck() -
fetchCharPropertyToCType
protected final int fetchCharPropertyToCType() -
syntaxWarn
-
syntaxWarn
-