Click or drag to resize

SequenceBase Class

The common base of sequence, sequence computation, and sequence expression objects, with some common infrastructure.
Inheritance Hierarchy
SystemObject
  de.unika.ipd.grGen.libGrSequenceBase
    de.unika.ipd.grGen.libGrSequence
    de.unika.ipd.grGen.libGrSequenceComputation

Namespace:  de.unika.ipd.grGen.libGr
Assembly:  libGr (in libGr.dll) Version: GrGen.NET 7.2
Syntax
C#
public abstract class SequenceBase

The SequenceBase type exposes the following members.

Constructors
  NameDescription
Protected methodSequenceBase
Initializes a new SequenceBase object (sets the id).
Protected methodSequenceBase(SequenceBase)
Copy constructor.
Top
Properties
  NameDescription
Public propertyChildrenBase
Enumerates all child sequence computation objects
Public propertyExecutionState
the state of executing this sequence base (a sequence base comprises sequences, sequence computations, sequence expressions)
Public propertyStatic memberFireDebugEvents
Public propertyId
returns the sequence /expresion id - every sequence /expression is assigned a unique id that is used in xgrs code generation and in sequence rendering for copies a new id is generated, too, this does not cause problems as code is only generated once per defined sequence
Public propertyPrecedence
The precedence of this operator. Zero is the highest priority, int.MaxValue the lowest. Used to add needed parentheses for printing sequences /expressions TODO: WTF? das ist im Parser genau umgekehrt implementiert!
Public propertySymbol
A string symbol representing this sequence /expression kind.
Top
Methods
  NameDescription
Public methodCheck
Checks the sequence /expression for errors utilizing the given checking environment reports them by exception
Protected methodCheckBaseObjectTypeIsKnown
Protected methodCheckEdgeTypeIsKnown
Protected methodCheckGraphElementTypeIsKnown
Protected methodCheckNodeTypeIsKnown
Public methodContains
Returns whether the potentialChild is contained in this sequence (base). True if potentialChild is the same as this sequence (base) (so reflexive relation).
Protected methodStatic memberCopyArgumentExpressionsAndArguments
Protected methodStatic memberCopyVars(DictionarySequenceVariable, SequenceVariable, IGraphProcessingEnvironment, ListSequenceVariable)
Protected methodStatic memberCopyVars(DictionarySequenceVariable, SequenceVariable, IGraphProcessingEnvironment, SequenceVariable, SequenceVariable)
Protected methodStatic memberFillArgumentsFromArgumentExpressions
Protected methodStatic memberFillReturnVariablesFromValues(SequenceVariable, IGraphProcessingEnvironment, Object)
Protected methodStatic memberFillReturnVariablesFromValues(SequenceVariable, IAction, IGraphProcessingEnvironment, ListObject)
Protected methodStatic memberFillReturnVariablesFromValues(SequenceVariable, IAction, IGraphProcessingEnvironment, ListObject, Int32)
Public methodFireBeginExecutionEvent
Public methodFireEndExecutionEvent
Public methodFireEnteringSequenceEvent
Public methodFireExitingSequenceEvent
Public methodStatic memberFireFinishedEvent(IGraphProcessingEnvironment, IMatches, Boolean)
Public methodStatic memberFireFinishedEvent(IGraphProcessingEnvironment, IMatches, Boolean)
Public methodStatic memberFireFinishedSelectedMatchEvent
Public methodStatic memberFireMatchedAfterFilteringEvent(IGraphProcessingEnvironment, IMatches, Boolean)
Public methodStatic memberFireMatchedAfterFilteringEvent(IGraphProcessingEnvironment, IMatches, Boolean)
Public methodStatic memberFireMatchedBeforeFilteringEvent(IGraphProcessingEnvironment, IMatches)
Public methodStatic memberFireMatchedBeforeFilteringEvent(IGraphProcessingEnvironment, IMatches)
Public methodStatic memberFireMatchSelectedEvent
Public methodStatic memberFireRewritingSelectedMatchEvent
Public methodStatic memberGetAction
Public methodGetCurrentlyExecutedSequenceBase
Returns the innermost sequence base beneath this as root which gets currently executed (for sequences on call stack this is the call). A path in the sequence tree gets executed, the innermost is the important one.
Protected methodStatic memberGetEdgeType
Public methodStatic memberGetFunction
Protected methodStatic memberGetLocalVariables(SequenceExpression, DictionarySequenceVariable, SetValueType, ListSequenceExpressionConstructor)
Protected methodStatic memberGetLocalVariables(SequenceFilterCall, DictionarySequenceVariable, SetValueType, ListSequenceExpressionConstructor)
Protected methodStatic memberGetLocalVariables(ListSequenceFilterCallBase, DictionarySequenceVariable, SetValueType, ListSequenceExpressionConstructor)
Protected methodStatic memberGetLocalVariables(SequenceFilterCallLambdaExpression, DictionarySequenceVariable, SetValueType, ListSequenceExpressionConstructor)
Protected methodStatic memberGetLocalVariables(SequenceVariable, DictionarySequenceVariable, SetValueType, ListSequenceExpressionConstructor)
Public methodGetLocalVariables(DictionarySequenceVariable, SetValueType, ListSequenceExpressionConstructor, SequenceBase)
Walks the sequence tree from this on to the given target sequence base (inclusive), collecting all variables found on the way into the variables dictionary, and all container and object type constructors used into the constructors array.
Protected methodStatic memberGetNodeType
Public methodStatic memberGetProcedure
Public methodStatic memberGetSequence
Protected methodGetTypeString
Public methodHasSequenceType
Protected methodStatic memberInitializeArgumentExpressionsAndArguments
Protected methodStatic memberInitializeReturnVariables
Protected methodStatic memberRemoveVariablesFallingOutOfScope
Public methodSetNeedForProfiling
sets for the very node the profiling flag (does not recurse)
Public methodSetNeedForProfilingRecursive
sets for the node and all children, i.e. the entire tree the profiling flag
Public methodType
Returns the type of the sequence /expression (for sequences always "boolean")
Top
Fields
  NameDescription
Protected fieldid
stores the sequence /expression unique id
Protected fieldStatic memberidSource
the static member used to assign the unique ids to the sequence /expression instances
Public fieldStatic membernoDebugEvents
Iff true, no debug (mostly action) events are fired during sequence and rule execution (so debugging is not possible).
Public fieldStatic membernoEvents
Iff true, in addition to debug events, no attribute change events are fired during sequence and rule execution (thus also transaction/backtracking breaks, as well as recording/replaying).
Public fieldStatic memberrandomGenerator
A common random number generator for all sequence /expression objects. It uses a time-dependent seed.
Top
See Also