public abstract class DFAAbstractStateNode extends com.oracle.truffle.api.nodes.Node implements JsonConvertible
| Modifier and Type | Field and Description |
|---|---|
protected short[] |
successors |
| Modifier and Type | Method and Description |
|---|---|
abstract DFAAbstractStateNode |
createNodeSplitCopy(short copyID)
Creates a copy of this state node, where all attributes are copied shallowly, except for the
DFAAbstractStateNode.successors array, which is deep-copied, and the node ID, which is replaced by the
parameter copyID. |
abstract void |
executeFindSuccessor(TRegexDFAExecutorLocals locals,
TRegexDFAExecutorNode executor,
boolean compactString)
Calculates this state's successor and returns its ID (
DFAAbstractStateNode.getId()) via
TRegexDFAExecutorLocals.setSuccessorIndex(int). |
short |
getId() |
short[] |
getSuccessors() |
accept, adoptChildren, atomic, atomic, copy, deepCopy, getChildren, getCost, getDebugProperties, getDescription, getEncapsulatingSourceSection, getLock, getParent, getRootNode, getSourceSection, insert, insert, isAdoptable, isSafelyReplaceableBy, lookupContextReference, lookupLanguageReference, notifyInserted, onReplace, replace, replace, reportPolymorphicSpecialize, toStringclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waittoJsonpublic abstract DFAAbstractStateNode createNodeSplitCopy(short copyID)
DFAAbstractStateNode.successors array, which is deep-copied, and the node ID, which is replaced by the
parameter copyID. Used by DFANodeSplit.copyID - new ID for the copy.public final short getId()
public final short[] getSuccessors()
public abstract void executeFindSuccessor(TRegexDFAExecutorLocals locals, TRegexDFAExecutorNode executor, boolean compactString)
DFAAbstractStateNode.getId()) via
TRegexDFAExecutorLocals.setSuccessorIndex(int). This return value is called
"successor index" and may either be an index of the successors array (between 0 and
DFAAbstractStateNode.getSuccessors().length) or DFAAbstractStateNode.FS_RESULT_NO_SUCCESSOR.locals - a virtual frame as described by TRegexDFAExecutorProperties.executor - this node's parent TRegexDFAExecutorNode.compactString -