GrGen.NET v4.4 API: the libGr class library (the type exact interface gets generated)
IGraphProcessingEnvironment Interface
Namespacesde.unika.ipd.grGen.libGrIGraphProcessingEnvironment
An environment for the advanced processing of graphs and the execution of sequences. With global variables, (sub)graph switching, and transaction management.
Declaration Syntax
C#
public interface IGraphProcessingEnvironment : ISubactionAndOutputAdditionEnvironment, 
	IActionExecutionEnvironment
Members
All MembersMethodsPropertiesEvents



IconMemberDescription
Actions
The actions employed by this graph processing environment
(Inherited from IActionExecutionEnvironment.)
AddEdge(IEdge, String)
Adds an existing IEdge object to the current graph of this processing environment and assigns it to the given variable. The edge must not be part of any graph, yet! Source and target of the edge must already be part of the graph.

AddEdge(EdgeType, INode, INode, String)
Adds a new edge to the current graph of this processing environment and assigns it to the given variable.

AddEdge(IEdge, String, String)
Adds an existing edge to the graph, names it, and assigns it to the given variable.

AddEdge(EdgeType, INode, INode, String, String)
Adds a new named edge to the graph and assigns it to the given variable.

AddNode(INode, String)
Adds an existing INode object to the current graph of this processing environment and assigns it to the given variable. The node must not be part of any graph, yet! The node may not be connected to any other elements!

AddNode(NodeType, String)
Adds a new node to the current graph of this processing environment and assigns it to the given variable.

AddNode(INode, String, String)
Adds an existing node to the graph, names it, and assigns it to the given variable.

AddNode(NodeType, String, String)
Adds a new named node to the graph and assigns it to the given variable.

ApplyGraphRewriteSequence(Sequence)
Apply a graph rewrite sequence (to the currently associated graph).

ApplyGraphRewriteSequence(String)
Apply a graph rewrite sequence (to the currently associated graph).

ApplyRewrite(RuleInvocationParameterBindings, Int32, Int32, Boolean, Boolean, List<(Of <<'(FilterCall>)>>))
Apply a rewrite rule (first computing the parameters with sequence expressions, last assigning result variables).

CloneGraphVariables(IGraph, IGraph)
Duplicates the graph variables of an old just cloned graph, assigns them to the new cloned graph.

CompliantUserProxy
Returns a non-interactive user proxy just echoing its inputs.

Custom(array<Object>[]()[][])
Does action execution environment dependent stuff.
(Inherited from IActionExecutionEnvironment.)
DebugEmitting(String, array<Object>[]()[][])
Fires an OnDebugEmit event.
(Inherited from ISubactionAndOutputAdditionEnvironment.)
DebugEntering(String, array<Object>[]()[][])
Fires an OnDebugEnter event.
(Inherited from ISubactionAndOutputAdditionEnvironment.)
DebugExiting(String, array<Object>[]()[][])
Fires an OnDebugExit event.
(Inherited from ISubactionAndOutputAdditionEnvironment.)
DebugHalting(String, array<Object>[]()[][])
Fires an OnDebugHalt event.
(Inherited from ISubactionAndOutputAdditionEnvironment.)
DebugHighlighting(String, List<(Of <<'(Object>)>>), List<(Of <<'(String>)>>))
Fires an OnDebugHighlight event.
(Inherited from ISubactionAndOutputAdditionEnvironment.)
EmitWriter
The writer used by emit statements. By default this is Console.Out.
(Inherited from ISubactionAndOutputAdditionEnvironment.)
EndOfIteration(Boolean, Sequence)
Fires an OnEndOfIteration event. This informs the debugger about the end of a loop iteration, so it can display the state at the end of the iteration.

EnteringSequence(Sequence)
Fires an OnEnteringSequence event.

ExitingSequence(Sequence)
Fires an OnExitingSequence event.

Finished(IMatches, Boolean)
Fires an OnFinished event.
(Inherited from IActionExecutionEnvironment.)
Finishing(IMatches, Boolean)
Fires an OnFinishing event.
(Inherited from IActionExecutionEnvironment.)
GetEdgeVarValue(String)
Retrieves the IEdge for a variable name or null, if the variable isn't set yet or anymore. A InvalidCastException is thrown, if the variable is set and does not point to an IEdge object.

GetElementVariables(IGraphElement)
Returns a linked list of variables mapping to the given graph element or null, if no variable points to this element

GetNewestActionVersion(IAction)
Retrieves the newest version of an IAction object currently available for this graph. This may be the given object.
(Inherited from IActionExecutionEnvironment.)
GetNodeVarValue(String)
Retrieves the INode for a variable name or null, if the variable isn't set yet or anymore. A InvalidCastException is thrown, if the variable is set and does not point to an INode object.

GetVariableValue(String)
Retrieves the object for a variable name or null, if the variable isn't set yet or anymore

Graph
Returns the graph currently focused in processing / sequence execution. This may be the initial main graph, or a subgraph switched to, the current top element of the graph usage stack.
(Inherited from IActionExecutionEnvironment.)
HighlightingUnderway
Tells whether execution is interrupted because a highlight statement was hit. Consequence: the timer that normally prints match statistics every second remains silent
(Inherited from IActionExecutionEnvironment.)
IsInSubgraph
Returns true when graph processings is currently occuring inside a subgraph, returns false when the main host graph is currently processed (i.e. only one entry on the current graph stack is existing).
(Inherited from ISubactionAndOutputAdditionEnvironment.)
Item[([( String])])
Indexer for accessing the variables by name, via index notation on this object.

Matched(IMatches, IMatch, Boolean)
Fires an OnMatched event.
(Inherited from IActionExecutionEnvironment.)
MaxMatches
The maximum number of matches to be returned for a RuleAll sequence element. If it is zero or less, the number of matches is unlimited.
(Inherited from IActionExecutionEnvironment.)
NamedGraph
Returns the named graph currently focused in processing / sequence execution. Returns null if this graph is not a named but an unnamed graph.
(Inherited from IActionExecutionEnvironment.)
OnDebugEmit
Fired when a debug emit is executed.
(Inherited from ISubactionAndOutputAdditionEnvironment.)
OnDebugEnter
Fired when a debug entity is entered.
(Inherited from ISubactionAndOutputAdditionEnvironment.)
OnDebugExit
Fired when a debug entity is left.
(Inherited from ISubactionAndOutputAdditionEnvironment.)
OnDebugHalt
Fired when a debug halt is executed.
(Inherited from ISubactionAndOutputAdditionEnvironment.)
OnDebugHighlight
Fired when a debug highlight is executed.
(Inherited from ISubactionAndOutputAdditionEnvironment.)
OnEndOfIteration
Fired when a sequence iteration is ended.

OnEntereringSequence
Fired when a sequence is entered.

OnExitingSequence
Fired when a sequence is left.

OnFinished
Fired after the rewrite step of a rule. Note, that the given matches object may contain invalid entries, as parts of the match may have been deleted!
(Inherited from IActionExecutionEnvironment.)
OnFinishing
Fired before the rewrite step of a rule, when at least one match has been found.
(Inherited from IActionExecutionEnvironment.)
OnMatched
Fired after all requested matches of a rule have been matched.
(Inherited from IActionExecutionEnvironment.)
OnReturnedFromSubgraph
Fired when graph processing is returning back after a switch. (To the main graph, or a subgraph previously switched to.)
(Inherited from ISubactionAndOutputAdditionEnvironment.)
OnRewritingNextMatch
Fired before the next match is rewritten. It is not fired before rewriting the first match.
(Inherited from IActionExecutionEnvironment.)
OnSwitchingToSubgraph
Fired when graph processing (rule and sequence execution) is switched to a (sub)graph. (Not fired when the main graph is replaced by another main graph, or initialized.)
(Inherited from ISubactionAndOutputAdditionEnvironment.)
ParseSequence(String)
Parses the given XGRS string and generates a Sequence object. Any actions in the string must refer to actions from the actions contained in this object.

PerformanceInfo
PerformanceInfo is used to accumulate information about needed time, found matches and applied rewrites. And additionally search steps carried out if profiling instrumentation code was generated. It must not be null. The user is responsible for resetting the PerformanceInfo object. This is typically done at the start of a rewrite sequence, to measure its performance.
(Inherited from IActionExecutionEnvironment.)
Recorder
The recorder of the main graph. Might be null (is set if a named graph is available, then the persistent names are taken from the named graph).
(Inherited from ISubactionAndOutputAdditionEnvironment.)
Replace(IMatches, Int32)
Executes the modifications of the according rule to the given match/matches. Fires OnRewritingNextMatch events before each rewrite except for the first one.
(Inherited from IActionExecutionEnvironment.)
ReturnFromSubgraph()()()()
Returns from the last switch to subgraph. (One level back on the current graph stack.)
(Inherited from ISubactionAndOutputAdditionEnvironment.)
RewritingNextMatch()()()()
Fires an OnRewritingNextMatch event.
(Inherited from IActionExecutionEnvironment.)
SetNewestActionVersion(IAction, IAction)
Sets the newest action version for a static action.
(Inherited from IActionExecutionEnvironment.)
SetVariableValue(String, Object)
Sets the value of the given variable to the given value. If the variable name is null, this function does nothing. If elem is null, the variable is unset.

SwitchToSubgraph(IGraph)
Switches the graph to the given (sub)graph. (One level added to the current graph stack.)
(Inherited from ISubactionAndOutputAdditionEnvironment.)
TransactionManager
Returns the transaction manager of the processing environment. (Recording and undoing changes in the main graph and all processed subgraphs). Don't forget to call Commit after a transaction is finished!

UserProxy
The user proxy queried for choices during sequence execution. By default the compliant user proxy, if debugging the debugger acting on behalf of/controlled by the user.

ValidateWithSequence(Sequence)
Tests whether the given sequence succeeds on a clone of the associated graph.

ValidateWithSequence(String)
Tests whether the given sequence succeeds on a clone of the associated graph.

Variables
Returns an iterator over all available (non-null) variables

Assembly: libGr (Module: libGr) Version: 4.4.0.0 (4.4.0.0)