public abstract class RegexASTSubtreeRootNode extends Term implements RegexASTVisitorIterable
Group which contains the syntactic subtree, as well as a
MatchFound node, which is needed for NFA-like traversal of the AST, see
NFATraversalRegexASTVisitor.copyRecursive, getSeqIndex, getSubTreeParent, setSeqIndexasAtomicGroup, asBackReference, asCharacterClass, asGroup, asLookAheadAssertion, asLookAroundAssertion, asLookBehindAssertion, asMatchFound, asPositionAssertion, asQuantifiableTerm, asSequence, asSubtreeRootNode, astNodeId, endsWithDollar, equalsSemantic, getFlags, getId, getMaxPath, getMinPath, getParent, hasBackReferences, hasCaptureGroups, hasCaret, hasDollar, hasEmptyGuard, hasLookAheads, hasLookBehinds, hasLoops, hasQuantifiers, idInitialized, incMaxPath, incMaxPath, incMinPath, incMinPath, isAtomicGroup, isBackReference, isCaret, isCharacterClass, isDead, isDollar, isExpandedQuantifier, isFlagSet, isGroup, isInLookAheadAssertion, isInLookBehindAssertion, isLookAheadAssertion, isLookAroundAssertion, isLookBehindAssertion, isMatchFound, isPositionAssertion, isPrefix, isQuantifiableTerm, isRoot, isSequence, isSubtreeRoot, markAsDead, setDead, setEmptyGuard, setEndsWithDollar, setEndsWithDollar, setExpandedQuantifier, setFlag, setFlag, setFlags, setHasBackReferences, setHasCaptureGroups, setHasCaret, setHasCaret, setHasDollar, setHasDollar, setHasLookAheads, setHasLookBehinds, setHasLoops, setHasLoops, setHasQuantifiers, setId, setMaxPath, setMinPath, setParent, setPrefix, setStartsWithCaret, setStartsWithCaret, startsWithCaret, toStringWithIDclone, equals, getClass, hashCode, notify, notifyAll, wait, wait, waitgetIdtoJsonpublic boolean globalSubTreeIdInitialized()
public int getGlobalSubTreeId()
public void setGlobalSubTreeId(int globalSubTreeId)
public boolean subTreeIdInitialized()
public int getSubTreeId()
public void setSubTreeId(int subTreeId)
public SubTreeIndex getSubtrees()
public abstract RegexASTSubtreeRootNode copy(RegexAST ast)
RegexASTNodepublic void setGroup(Group group)
This method should be called after creating any instance of this class. Otherwise, methods of
this class could throw NullPointerExceptions or return nulls.
public MatchFound getMatchFound()
MatchFound node.public void setMatchFound(MatchFound matchFound)
public Term getAnchoredInitialState()
public void setAnchoredInitialState(PositionAssertion anchoredInitialState)
public Term getUnAnchoredInitialState()
public void setUnAnchoredInitialState(MatchFound unAnchoredInitialState)
public Term getAnchoredFinalState()
public void setAnchoredFinalState(PositionAssertion anchoredFinalState)
public boolean visitorHasNext()
visitorHasNext in interface RegexASTVisitorIterablepublic RegexASTNode visitorGetNext(boolean reverse)
visitorGetNext in interface RegexASTVisitorIterablepublic void resetVisitorIterator()
resetVisitorIterator in interface RegexASTVisitorIterablepublic abstract String getPrefix()
protected JsonObject toJson(String typeName)
toJson in class RegexASTNode