- All Known Implementing Classes:
DOMProducer
,ParallelProducer
,Producer
,RGGProducer
,SimpleProducer
,VVProducer
public interface Producer
A
Producer
is used within right hand sides of XL rules
in order to construct
the replacement for the match of the left hand side.- Author:
- Ole Kniemeyer
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final int
Indicates the XL rule arrow==>>
.static final int
Indicates the XL rule arrow::>
.static final int
Indicates the XL rule arrow==>
. -
Method Summary
Modifier and TypeMethodDescriptionboolean
producer$beginExecution
(int arrow) This method is invoked by the XL run-time system in order to notify the producer about the beginning of a right-hand side (i.e., a match for the left-hand side has been found, and the right-hand side is executed).void
producer$endExecution
(boolean executed) This method is invoked by the XL run-time system in order to notify the producer about the end of the execution of a right-hand side.Returns the graph for which this producer constructs the right-hand side structur.void
producer$visitEdge
(EdgePattern pattern)
-
Field Details
-
SIMPLE_ARROW
static final int SIMPLE_ARROWIndicates the XL rule arrow==>
.- See Also:
-
DOUBLE_ARROW
static final int DOUBLE_ARROWIndicates the XL rule arrow==>>
.- See Also:
-
EXECUTION_ARROW
static final int EXECUTION_ARROWIndicates the XL rule arrow::>
.- See Also:
-
-
Method Details
-
producer$beginExecution
boolean producer$beginExecution(int arrow) This method is invoked by the XL run-time system in order to notify the producer about the beginning of a right-hand side (i.e., a match for the left-hand side has been found, and the right-hand side is executed).- Parameters:
arrow
- the type of rule arrow, one ofSIMPLE_ARROW
,DOUBLE_ARROW
,EXECUTION_ARROW
- Returns:
true
if the right-hand side shall be executed,false
if its execution shall be skipped
-
producer$endExecution
void producer$endExecution(boolean executed) This method is invoked by the XL run-time system in order to notify the producer about the end of the execution of a right-hand side.- Parameters:
executed
- return value of invocation ofproducer$beginExecution(int)
-
producer$visitEdge
-
producer$getGraph
Graph producer$getGraph()Returns the graph for which this producer constructs the right-hand side structur.- Returns:
- the graph on which this producer operates
-