- java.lang.Object
-
- org.joni.ast.Node
-
- org.joni.ast.StateNode
-
- org.joni.ast.QuantifierNode
-
- All Implemented Interfaces:
NodeStatus,NodeType
public final class QuantifierNode extends StateNode
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static classQuantifierNode.ReduceType-
Nested classes/interfaces inherited from class org.joni.ast.Node
Node.TopNode
-
-
Field Summary
Fields Modifier and Type Field Description intcombExpCheckNumbooleangreedyNodeheadExactbooleanisReferedintlowerNodenextHeadExact(package private) static java.lang.String[]PopularQStr(package private) static QuantifierNode.ReduceType[][]REDUCE_TABLE(package private) static java.lang.String[]ReduceQStrstatic intREPEAT_INFINITENodetargetinttargetEmptyInfointupper-
Fields inherited from interface org.joni.constants.internal.NodeStatus
NST_ADDR_FIXED, NST_BY_NUMBER, NST_CALLED, NST_CLEN_FIXED, NST_IN_REPEAT, NST_MARK1, NST_MARK2, NST_MAX_FIXED, NST_MEM_BACKREFED, NST_MIN_FIXED, NST_NAME_REF, NST_NAMED_GROUP, NST_NEST_LEVEL, NST_RECURSION, NST_STOP_BT_SIMPLE_REPEAT
-
-
Constructor Summary
Constructors Constructor Description QuantifierNode(int lower, int upper, boolean byNumber)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidcopy(QuantifierNode other)protected NodegetChild()java.lang.StringgetName()booleanisAnyCharStar()static booleanisRepeatInfinite(int n)protected intpopularNum()voidreduceNestedQuantifier(QuantifierNode other)protected voidsetChild(Node child)intsetQuantifier(Node tgt, boolean group, ScanEnvironment env, byte[] bytes, int p, int end)voidsetTarget(Node tgt)java.lang.StringtoString(int level)-
Methods inherited from class org.joni.ast.StateNode
clearAddrFixed, clearByNumber, clearCAlled, clearCLenFixed, clearInRepeat, clearMark1, clearMark2, clearMaxFixed, clearMemBackrefed, clearMinFixed, clearNamedGroup, clearNameRef, clearNestLevel, clearRecursion, clearStopBtSimpleRepeat, isAddrFixed, isByNumber, isCalled, isCLenFixed, isInRepeat, isMark1, isMark2, isMaxFixed, isMemBackrefed, isMinFixed, isNamedGroup, isNameRef, isNestLevel, isRecursion, isStopBtSimpleRepeat, setAddrFixed, setByNumber, setCalled, setCLenFixed, setInRepeat, setMark1, setMark2, setMaxFixed, setMemBackrefed, setMinFixed, setNamedGroup, setNameRef, setNestLevel, setRecursion, setStopBtSimpleRepeat, stateToString
-
Methods inherited from class org.joni.ast.Node
getAddressName, getType, getType2Bit, isSimple, newTop, pad, replaceWith, toString
-
-
-
-
Field Detail
-
REPEAT_INFINITE
public static final int REPEAT_INFINITE
- See Also:
- Constant Field Values
-
target
public Node target
-
lower
public int lower
-
upper
public int upper
-
greedy
public boolean greedy
-
targetEmptyInfo
public int targetEmptyInfo
-
headExact
public Node headExact
-
nextHeadExact
public Node nextHeadExact
-
isRefered
public boolean isRefered
-
combExpCheckNum
public int combExpCheckNum
-
REDUCE_TABLE
static final QuantifierNode.ReduceType[][] REDUCE_TABLE
-
PopularQStr
static final java.lang.String[] PopularQStr
-
ReduceQStr
static final java.lang.String[] ReduceQStr
-
-
Method Detail
-
setTarget
public void setTarget(Node tgt)
-
isAnyCharStar
public boolean isAnyCharStar()
-
popularNum
protected int popularNum()
-
copy
protected void copy(QuantifierNode other)
-
reduceNestedQuantifier
public void reduceNestedQuantifier(QuantifierNode other)
-
setQuantifier
public int setQuantifier(Node tgt, boolean group, ScanEnvironment env, byte[] bytes, int p, int end)
-
isRepeatInfinite
public static boolean isRepeatInfinite(int n)
-
-