public static enum QuantifierGuard.Kind extends Enum<QuantifierGuard.Kind>
Enum.EnumDesc<E extends Enum<E>>| Enum Constant and Description |
|---|
checkGroupMatched
Transition is entering the then-branch (the first alternative) of a
ConditionalBackReferenceGroup. |
checkGroupNotMatched
Transition is entering the else-branch (the second alternative) of a
ConditionalBackReferenceGroup. |
enter
Transition is entering a quantified expression.
|
enterEmptyMatch
Transition would go through an entire quantified expression without matching anything.
|
enterZeroWidth
Transition is entering a quantified expression that may match the empty string.
|
escapeZeroWidth
Transition is leaving a quantified expression that may match the empty string and it is
about to continue to what follows the loop.
|
exit
Transition is leaving a quantified expression.
|
exitEmptyMatch
Transition is leaving an
empty-match state. |
exitReset
Transition is leaving a quantified expression without lower bound, i.e.
|
exitZeroWidth
Transition is leaving a quantified expression that may match the empty string.
|
loop
Transition represents a back-edge in the quantifier loop.
|
loopInc
Transition represents a back-edge in a quantifier loop without upper bound, i.e.
|
updateCG
Transition is passing a capture group boundary.
|
updateRecursiveBackrefPointer
Transition is leaving a group containing recursive back-references.
|
| Modifier and Type | Method and Description |
|---|---|
static QuantifierGuard.Kind |
valueOf(String name)
Returns the enum constant of this type with the specified name.
|
static QuantifierGuard.Kind[] |
values()
Returns an array containing the constants of this enum type, in
the order they are declared.
|
public static final QuantifierGuard.Kind enter
public static final QuantifierGuard.Kind loop
Token.Quantifier.getMax(), then increase loop count.public static final QuantifierGuard.Kind loopInc
Token.Quantifier.isInfiniteLoop() is true. Just increase the
loop count.public static final QuantifierGuard.Kind exit
Token.Quantifier.getMin(), then reset the loop count.public static final QuantifierGuard.Kind exitReset
Token.Quantifier.getMin() == 0. Just reset the loop count.public static final QuantifierGuard.Kind enterZeroWidth
public static final QuantifierGuard.Kind exitZeroWidth
public static final QuantifierGuard.Kind escapeZeroWidth
QuantifierGuard.Kind.exitZeroWidth).public static final QuantifierGuard.Kind enterEmptyMatch
Token.Quantifier.getMin(), then increase the
quantifier count. This guard is added to all transitions to the special
empty-match state.public static final QuantifierGuard.Kind exitEmptyMatch
empty-match state. This
guard doesn't do anything, it just serves as a marker for
QuantifierGuard.getKindReverse().public static final QuantifierGuard.Kind updateCG
QuantifierGuard.Kind.exitZeroWidth, which, in the case of Ruby,
also needs to monitor the state of capture groups in between QuantifierGuard.Kind.enterZeroWidth and
QuantifierGuard.Kind.exitZeroWidth.public static final QuantifierGuard.Kind updateRecursiveBackrefPointer
public static final QuantifierGuard.Kind checkGroupMatched
ConditionalBackReferenceGroup. The capture group identified by
QuantifierGuard.getIndex() must be matched in order to proceed.public static final QuantifierGuard.Kind checkGroupNotMatched
ConditionalBackReferenceGroup. The capture group identified by
QuantifierGuard.getIndex() must be *not* matched in order to proceed.public static QuantifierGuard.Kind[] values()
public static QuantifierGuard.Kind valueOf(String name)
name - the name of the enum constant to be returned.IllegalArgumentException - if this enum type has no constant with the specified nameNullPointerException - if the argument is null