de.grogra.rgg.model
Class RGGProducer

java.lang.Object
  extended by de.grogra.xl.impl.base.Producer
      extended by de.grogra.rgg.model.RGGProducer
All Implemented Interfaces:
Producer, java.util.concurrent.Executor

public class RGGProducer
extends Producer


Nested Class Summary
static class RGGProducer.Creator
           
 
Field Summary
 
Fields inherited from class de.grogra.xl.impl.base.Producer
addNodeQueue, deleteEdgeQueue, deleteNodeQueue
 
Fields inherited from interface de.grogra.xl.query.Producer
DOUBLE_ARROW, EXECUTION_ARROW, SIMPLE_ARROW
 
Constructor Summary
RGGProducer(QueryState match)
           
 
Method Summary
 RGGProducer operator$arrow(Node node, int edge)
           
 RGGProducer operator$arrow(Node node, Node edge)
           
 RGGProducer operator$gt(Node node)
           
 RGGProducer operator$leftArrow(Node node, int edge)
           
 RGGProducer operator$leftArrow(Node node, Node edge)
           
 RGGProducer operator$leftRightArrow(Node node)
           
 RGGProducer operator$line(Node node)
           
 RGGProducer operator$lt(Node node)
           
 RGGProducer operator$plusArrow(Node node)
           
 RGGProducer operator$plusLeftArrow(Node node)
           
 RGGProducer operator$plusLeftRightArrow(Node node)
           
 RGGProducer operator$plusLine(Node node)
           
 RGGProducer operator$slashArrow(Node node)
           
 RGGProducer operator$slashLeftArrow(Node node)
           
 RGGProducer operator$slashLeftRightArrow(Node node)
           
 RGGProducer operator$slashLine(Node node)
           
 RGGProducer operator$space(Node node)
           
 VVProducer operator$space(VVProducer prod)
           
 RGGProducer operator$sub(Node node, int edge)
           
 RGGProducer operator$sub(Node node, Node edge)
           
 RGGProducer operator$xLeftRightArrow(Node node, int edge)
           
 RGGProducer operator$xLeftRightArrow(Node node, Node edge)
           
 RGGProducer producer$begin()
           
 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).
 void producer$end()
           
 void producer$endExecution(boolean applied)
          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.
 Node producer$getLeftmostMatch()
           
 RGGProducer producer$getProducer()
           
 Node producer$getRoot()
           
 RGGProducer producer$pop(java.lang.Object oldProducer)
           
 RGGProducer producer$push()
           
 RGGProducer producer$separate()
           
 void producer$visitEdge(EdgePattern pattern)
           
 boolean ruleProbability(double p)
           
static Node toNode(boolean value)
           
static Node toNode(BSplineCurve value)
           
static Node toNode(BSplineSurface value)
           
static Node toNode(byte value)
           
static Node toNode(char value)
           
static Node toNode(double value)
           
static Node toNode(float value)
           
static Node toNode(int value)
           
static Node toNode(long value)
           
static Node toNode(java.lang.Object value)
           
static Node toNode(Reference value)
           
static Node toNode(short value)
           
 VVProducer vv()
           
 
Methods inherited from class de.grogra.xl.impl.base.Producer
addEdgeImpl, addNodeImpl, connect, consume, copyIncoming, copyOutgoing, cut, execute, getPreviousNode, getQueryState, getQueue, getQueues, interpretive, moveIncoming, moveOutgoing, nodeUsed, popImpl, producer$getGraph, pushImpl, separateImpl, setConnectionEdges, setInConnectionEdges, setOutConnectionEdges, useOperators
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RGGProducer

public RGGProducer(QueryState match)
Method Detail

operator$arrow

public RGGProducer operator$arrow(Node node,
                                  int edge)

operator$arrow

public RGGProducer operator$arrow(Node node,
                                  Node edge)

operator$gt

public RGGProducer operator$gt(Node node)

operator$leftArrow

public RGGProducer operator$leftArrow(Node node,
                                      int edge)

operator$leftArrow

public RGGProducer operator$leftArrow(Node node,
                                      Node edge)

operator$leftRightArrow

public RGGProducer operator$leftRightArrow(Node node)

operator$line

public RGGProducer operator$line(Node node)

operator$lt

public RGGProducer operator$lt(Node node)

operator$plusArrow

public RGGProducer operator$plusArrow(Node node)

operator$plusLeftArrow

public RGGProducer operator$plusLeftArrow(Node node)

operator$plusLeftRightArrow

public RGGProducer operator$plusLeftRightArrow(Node node)

operator$plusLine

public RGGProducer operator$plusLine(Node node)

operator$slashArrow

public RGGProducer operator$slashArrow(Node node)

operator$slashLeftArrow

public RGGProducer operator$slashLeftArrow(Node node)

operator$slashLeftRightArrow

public RGGProducer operator$slashLeftRightArrow(Node node)

operator$slashLine

public RGGProducer operator$slashLine(Node node)

operator$space

public RGGProducer operator$space(Node node)

operator$space

public VVProducer operator$space(VVProducer prod)

operator$sub

public RGGProducer operator$sub(Node node,
                                int edge)

operator$sub

public RGGProducer operator$sub(Node node,
                                Node edge)

operator$xLeftRightArrow

public RGGProducer operator$xLeftRightArrow(Node node,
                                            int edge)

operator$xLeftRightArrow

public RGGProducer operator$xLeftRightArrow(Node node,
                                            Node edge)

producer$begin

public RGGProducer producer$begin()

producer$beginExecution

public boolean producer$beginExecution(int arrow)
Description copied from interface: Producer
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).

Specified by:
producer$beginExecution in interface Producer
Overrides:
producer$beginExecution in class Producer
Parameters:
arrow - the type of rule arrow, one of Producer.SIMPLE_ARROW, Producer.DOUBLE_ARROW, Producer.EXECUTION_ARROW
Returns:
true if the right-hand side shall be executed, false if its execution shall be skipped

producer$end

public void producer$end()

producer$endExecution

public void producer$endExecution(boolean applied)
Description copied from interface: Producer
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.

Specified by:
producer$endExecution in interface Producer
Overrides:
producer$endExecution in class Producer
Parameters:
applied - return value of invocation of Producer.producer$beginExecution(int)

producer$getLeftmostMatch

public Node producer$getLeftmostMatch()

producer$getProducer

public RGGProducer producer$getProducer()

producer$getRoot

public Node producer$getRoot()

producer$pop

public RGGProducer producer$pop(java.lang.Object oldProducer)

producer$push

public RGGProducer producer$push()

producer$separate

public RGGProducer producer$separate()

producer$visitEdge

public void producer$visitEdge(EdgePattern pattern)
Specified by:
producer$visitEdge in interface Producer
Overrides:
producer$visitEdge in class Producer

ruleProbability

public boolean ruleProbability(double p)

toNode

public static Node toNode(boolean value)

toNode

public static Node toNode(BSplineCurve value)

toNode

public static Node toNode(BSplineSurface value)

toNode

public static Node toNode(byte value)

toNode

public static Node toNode(char value)

toNode

public static Node toNode(double value)

toNode

public static Node toNode(float value)

toNode

public static Node toNode(int value)

toNode

public static Node toNode(long value)

toNode

public static Node toNode(java.lang.Object value)

toNode

public static Node toNode(Reference value)

toNode

public static Node toNode(short value)

vv

public VVProducer vv()