java.lang.Object
de.grogra.xl.impl.base.Graph
de.grogra.xl.impl.base.GraphImpl
-
Nested Class Summary
Nested classes/interfaces inherited from class de.grogra.xl.impl.base.Graph
Graph.QState, Graph.ThreadData
-
Field Summary
Fields inherited from class de.grogra.xl.impl.base.Graph
EXCLUDE_DELETED_FLAG, INTERPRETIVE_FLAG, MODE_MASK, PARALLEL_MODE, PARALLEL_NON_DETERMINISTIC_MODE, SEQUENTIAL_MODE, SEQUENTIAL_NON_DETERMINISTIC_MODE
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionabstract void
addEdgeBits
(Object source, Object target, int bits) Adds a set of edge bits from asource
node to atarget
node.abstract void
Adds a node to this graph extent.createQueue
(QueueCollection qc, QueueDescriptor descr) abstract void
removeEdgeBits
(Object source, Object target, int bits) Removes a set of edge bits from asource
node to atarget
node.void
removeNode
(Object node) Methods inherited from class de.grogra.xl.impl.base.Graph
allowNoninjectiveMatchesByDefault, allowNoninjectiveMatchesForNextQuery, areComparableScales, beginModifications, canEnumerateNodes, commitModifications, createMatcher, createQueryState, createThreadData, derive, enumerateEdges, enumerateSpaces, getDerivationMode, getMinimumEncoarseDepthDiff, getModel, getPredecessor, getQueues, getScaleValue, getThreadData, getTypeNode, getTypeNode, isInTypeGraph, isSameScale, setDerivationMode, sortedTypeGraph
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface de.grogra.xl.query.Graph
canEnumerateEdges, createProducer, enumerateNodes, getRoot, getTypeRoot
-
Constructor Details
-
GraphImpl
-
-
Method Details
-
createQueue
- Specified by:
createQueue
in classGraph
-
addNode
Adds a node to this graph extent. This method is invoked by the XL runtime system before invocations ofaddEdgeBits(java.lang.Object, java.lang.Object, int)
. Implementations may perform tasks in preparation of the addition of edges, if necessary.- Parameters:
node
- the node for which edges will be added later on
-
addEdgeBits
Adds a set of edge bits from asource
node to atarget
node. This method is invoked within the right hand sides of XL productions==>>
,==>
.- Parameters:
source
- the source node of the edgetarget
- the target node of the edgebits
- the edge bits that are to be added
-
removeEdgeBits
Removes a set of edge bits from asource
node to atarget
node. This method is invoked within the right hand sides of XL productions==>>
,==>
.- Parameters:
source
- the source node of the edgetarget
- the target node of the edgebits
- the edge bits that are to be removed
-
removeNode
-
createInterpretiveMark
-