Package org.joni.ast
Class QuantifierNode
- 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
-
-
Field Summary
Fields Modifier and Type Field Description intcombExpCheckNumbooleangreedyNodeheadExactbooleanisReferedintlowerNodenextHeadExactstatic intREPEAT_INFINITENodetargetinttargetEmptyInfointupper-
Fields inherited from interface org.joni.constants.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 StringNodeconvertToString(int flag)protected NodegetChild()java.lang.StringgetName()intgetType()booleanisAnyCharStar()static booleanisRepeatInfinite(int n)protected intpopularNum()voidreduceNestedQuantifier(QuantifierNode other)protected voidset(QuantifierNode other)protected voidsetChild(Node newChild)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, getType2Bit, isAllowedInLookBehind, isInvalidQuantifier, isSimple, pad, swap, toString, verifyTree
-
-
-
-
Field Detail
-
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
-
REPEAT_INFINITE
public static final int REPEAT_INFINITE
- See Also:
- Constant Field Values
-
-
Method Detail
-
setTarget
public void setTarget(Node tgt)
-
convertToString
public StringNode convertToString(int flag)
-
isAnyCharStar
public boolean isAnyCharStar()
-
popularNum
protected int popularNum()
-
set
protected void set(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)
-
-