Click or drag to resize

ISubactionAndOutputAdditionEnvironment Interface

An environment extending basic action execution with subaction debugging, plus subgraph nesting, and output -- for one textual emits, and for the other graph change recording.

Namespace:  de.unika.ipd.grGen.libGr
Assembly:  libGr (in libGr.dll) Version: GrGen.NET 7.2
Syntax
C#
public interface ISubactionAndOutputAdditionEnvironment : IActionExecutionEnvironment

The ISubactionAndOutputAdditionEnvironment type exposes the following members.

Properties
  NameDescription
Public propertyActions
The actions employed by this graph processing environment
(Inherited from IActionExecutionEnvironment.)
Public propertyBackend
The backend to be used for graph creation when a graph is imported
(Inherited from IActionExecutionEnvironment.)
Public propertyCustomCommandsAndDescriptions
The action execution environment dependent commands that are available, and a description of each command.
(Inherited from IActionExecutionEnvironment.)
Public propertyEmitWriter
The writer used by emit statements. By default this is ConsoleUI.outWriter (normally forwarded to Console.Out).
Public propertyEmitWriterDebug
The writer used by emitdebug statements. This is ConsoleUI.outWriter (normally forwarded to Console.Out), and can't be redirected to a file in contrast to the EmitWriter.
Public propertyEnableAssertions
Allows to enable/disable assertions and find out about assertion state.
(Inherited from IActionExecutionEnvironment.)
Public propertyGraph
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.)
Public propertyHighlightingUnderway
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.)
Public propertyIsInSubgraph
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).
Public propertyMaxMatches
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.)
Public propertyNamedGraph
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.)
Public propertyPerformanceInfo
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.)
Public propertyRecorder
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).
Top
Methods
  NameDescription
Public methodBeginExecution
Fires an OnBeginExecution event.
(Inherited from IActionExecutionEnvironment.)
Public methodCustom
Does action execution environment dependent stuff.
(Inherited from IActionExecutionEnvironment.)
Public methodDebugEmitting
Fires an OnDebugEmit event.
Public methodDebugEntering
Fires an OnDebugEnter event.
Public methodDebugExiting
Fires an OnDebugExit event.
Public methodDebugHalting
Fires an OnDebugHalt event.
Public methodDebugHighlighting
Fires an OnDebugHighlight event.
Public methodEndExecution
Fires an OnEndExecution event.
(Inherited from IActionExecutionEnvironment.)
Public methodFinished(IMatches, Boolean)
Fires an OnFinished event.
(Inherited from IActionExecutionEnvironment.)
Public methodFinished(IMatches, Boolean)
Fires an OnFinished event.
(Inherited from IActionExecutionEnvironment.)
Public methodFinishedSelectedMatch
Fires an OnFinishedSelectedMatch event.
(Inherited from IActionExecutionEnvironment.)
Public methodGetNewestActionVersion
Retrieves the newest version of an IAction object currently available for this graph. This may be the given object.
(Inherited from IActionExecutionEnvironment.)
Public methodMatch
Matches a rewrite rule.
(Inherited from IActionExecutionEnvironment.)
Public methodMatchedAfterFiltering(IMatches, Boolean)
Fires an OnMatchedAfter event.
(Inherited from IActionExecutionEnvironment.)
Public methodMatchedAfterFiltering(IMatches, Boolean)
Fires an OnMatchedAfter event.
(Inherited from IActionExecutionEnvironment.)
Public methodMatchedBeforeFiltering(IMatches)
Fires an OnMatchedBefore event.
(Inherited from IActionExecutionEnvironment.)
Public methodMatchedBeforeFiltering(IMatches)
Fires an OnMatchedBefore event.
(Inherited from IActionExecutionEnvironment.)
Public methodMatchForQuery(Boolean, ActionCall)
Matches the rewrite rules, without firing the Matched event, but with firing the PreMatch event and Cloning of the matches (so they can stored, or used in an expression combining multiple queries).
(Inherited from IActionExecutionEnvironment.)
Public methodMatchForQuery(IAction, Object, Int32, Boolean)
Matches a rewrite rule, without firing the Matched event, but with firing the PreMatch event and Cloning of the matches (so they can stored, or used in an expression combining multiple queries like [?r] + [?r], or the action can be called multiple times in a multi rule all call query (on different parameters)).
(Inherited from IActionExecutionEnvironment.)
Public methodMatchSelected
Fires an OnMatchSelected event.
(Inherited from IActionExecutionEnvironment.)
Public methodMatchWithoutEvent(Boolean, ActionCall)
Matches the rewrite rules, without firing the Matched event, but fires the MatchedBeforeFiltering event (for internal or non-debugger use).
(Inherited from IActionExecutionEnvironment.)
Public methodMatchWithoutEvent(IAction, Object, Int32, Boolean)
Matches a rewrite rule, without firing the Matched event (but fires the MatchedBeforeFiltering event - for internal or non-debugger use).
(Inherited from IActionExecutionEnvironment.)
Public methodReplace
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.)
Public methodReturnFromSubgraph
Returns from the last switch to subgraph. (One level back on the current graph stack.)
Public methodRewritingSelectedMatch
Fires an OnRewritingSelectedMatch event (comparable to the old OnFinishing and OnRewritingNextMatch, now one event, fired per selected match).
(Inherited from IActionExecutionEnvironment.)
Public methodSetNewestActionVersion
Sets the newest action version for a static action.
(Inherited from IActionExecutionEnvironment.)
Public methodSwitchToSubgraph
Switches the graph to the given (sub)graph. (One level added to the current graph stack.)
Top
Events
  NameDescription
Public eventOnBeginExecution
Fired when execution of a pattern matching construct begins.
(Inherited from IActionExecutionEnvironment.)
Public eventOnDebugEmit
Fired when a debug emit is executed.
Public eventOnDebugEnter
Fired when a debug entity is entered.
Public eventOnDebugExit
Fired when a debug entity is left.
Public eventOnDebugHalt
Fired when a debug halt is executed.
Public eventOnDebugHighlight
Fired when a debug highlight is executed.
Public eventOnEndExecution
Fired when execution of a pattern matching construct ends.
(Inherited from IActionExecutionEnvironment.)
Public eventOnFinished
Fired after the rewrite step of a rule/after rule execution has completed. Note, that the given matches object may contain invalid entries, as parts of the match may have been deleted!
(Inherited from IActionExecutionEnvironment.)
Public eventOnFinishedSelectedMatch
Fired after the selected match was rewritten and embedded sequences executed.
(Inherited from IActionExecutionEnvironment.)
Public eventOnMatchedAfter
Fired after all requested matches of a multi rule or rule have been matched (after filtering of matches).
(Inherited from IActionExecutionEnvironment.)
Public eventOnMatchedBefore
Fired after all requested matches of a multi rule or rule have been matched, before filtering of the matches. Allows a lookahead on the matches, on all found matches, in contrast to OnMatchedAfter that only reports the ones that are applied in the end.
(Inherited from IActionExecutionEnvironment.)
Public eventOnMatchSelected
Fired when a match was selected for execution (after filtering/selection of matches).
(Inherited from IActionExecutionEnvironment.)
Public eventOnReturnedFromSubgraph
Fired when graph processing is returning back after a switch. (To the main graph, or a subgraph previously switched to.)
Public eventOnRewritingSelectedMatch
Fired before the selected match is rewritten (comparable to the old OnFinishing and OnRewritingNextMatch, now one event, fired per selected match).
(Inherited from IActionExecutionEnvironment.)
Public eventOnSelectedMatchRewritten
Fired after the selected match was rewritten (but before embedded sequences are executed).
(Inherited from IActionExecutionEnvironment.)
Public eventOnSwitchingToSubgraph
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.)
Top
See Also