de.grogra.xl.impl.base
Class GraphImpl
java.lang.Object
de.grogra.xl.impl.base.Graph
de.grogra.xl.impl.base.GraphImpl
- All Implemented Interfaces:
- Graph, java.lang.Cloneable
- Direct Known Subclasses:
- Graph, Graph
public abstract class GraphImpl
- extends Graph
| Methods inherited from class de.grogra.xl.impl.base.Graph |
allowNoninjectiveMatchesByDefault, allowNoninjectiveMatchesForNextQuery, beginModifications, canEnumerateNodes, commitModifications, createMatcher, createQueryState, createThreadData, derive, enumerateEdges, getDerivationMode, getModel, getPredecessor, getQueues, getThreadData, setDerivationMode |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
GraphImpl
public GraphImpl(RuntimeModel model)
addEdgeBits
public abstract void addEdgeBits(java.lang.Object source,
java.lang.Object target,
int bits)
- Adds a set of edge bits from a
source node
to a target 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
addNode
public abstract void addNode(java.lang.Object node)
- Adds a node to this graph extent. This method is invoked by the
XL runtime system before invocations of
addEdgeBits(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
createInterpretiveMark
public java.lang.Object createInterpretiveMark()
createQueue
public GraphQueue createQueue(QueueCollection qc,
QueueDescriptor descr)
- Specified by:
createQueue in class Graph
removeEdgeBits
public abstract void removeEdgeBits(java.lang.Object source,
java.lang.Object target,
int bits)
- Removes a set of edge bits from a
source node
to a target 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
public void removeNode(java.lang.Object node)