Click or drag to resize

PatternElement Class

An element of a rule pattern.
Inheritance Hierarchy
SystemObject
  de.unika.ipd.grGen.lgspPatternElement
    de.unika.ipd.grGen.lgspPatternEdge
    de.unika.ipd.grGen.lgspPatternNode

Namespace:  de.unika.ipd.grGen.lgsp
Assembly:  lgspBackend (in lgspBackend.dll) Version: GrGen.NET 7.2
Syntax
C#
public abstract class PatternElement : IPatternElement

The PatternElement type exposes the following members.

Constructors
Properties
  NameDescription
Public propertyAnnotations
The annotations of the pattern element
Public propertyDefToBeYieldedTo
Iff true the element is only defined in its PointOfDefinition pattern, it gets matched in another, nested or called pattern which yields it to the containing pattern.
Public propertyInitialization
The initialization expression for the element if some was defined, otherwise null.
Public propertyName
The name of the pattern element.
Public propertyPointOfDefinition
The pattern where this element gets matched (null if rule parameter).
Public propertyUnprefixedName
The pure name of the pattern element as specified in the .grg without any prefixes.
Top
Methods
  NameDescription
Public methodGetPatternElementThisElementDependsOnOutsideOfGraphConnectedness
Returns the pattern element we depend on, for a storage lookup, or an indexed storage lookup, or an index lookup
Public methodToString
Converts this instance into a string representation.
(Overrides ObjectToString.)
Top
Fields
  NameDescription
Public fieldAllowedTypes
An array of allowed types for this pattern element. If it is null, all subtypes of the type specified by typeID (including itself) are allowed for this pattern element.
Public fieldannotations
The annotations of the pattern element
Public fieldAssignmentSource
If not null this pattern element is to be bound by assigning the given assignmentSource to the pattern element. This is needed to fill the pattern parameters of a pattern embedding which was inlined.
Public fieldCost
Default cost/priority from frontend, user priority if given.
Public fielddefToBeYieldedTo
Iff true the element is only defined in its PointOfDefinition pattern, it gets matched in another, nested or called pattern which yields it to the containing pattern.
Public fieldElementBeforeCasting
If not null this pattern element is to be bound by casting the given ElementBeforeCasting to the pattern element type or causing matching to fail.
Public fieldIndexAccess
If not null this pattern element is to be determined by an index lookup, with details specified by the concrete index access type contained in this field.
Public fieldinitialization
The initialization expression for the element if some was defined, otherwise null.
Public fieldIsAllowedType
An array containing a bool for each node/edge type (order defined by the TypeIDs) which is true iff the corresponding type is allowed for this pattern element. It should be null if allowedTypes is null or empty or has only one element.
Public fieldMaybeNull
Tells whether this pattern element may be null. May only be true if pattern element is handed in as rule parameter.
Public fieldname
The name of the pattern element.
Public fieldNameLookup
If not null this pattern element is to be determined by a name map lookup
Public fieldoriginalElement
Links to the original pattern element in case this element was inlined, otherwise null; the point of definition of the original element references the original containing pattern
Public fieldOriginalIndependentElement
Links to the original pattern element in case this element stems from inlining an independent (those elements exist only in search planning, they are not contained in any pattern).
Public fieldoriginalSubpatternEmbedding
Links to the original subpattern embedding which was inlined in case this element was inlined, otherwise null.
Public fieldParameterIndex
Specifies to which rule parameter this pattern element corresponds. Only valid if pattern element is handed in as rule parameter.
Public fieldpointOfDefinition
The pattern where this element gets matched (null if rule parameter).
Public fieldPresetBecauseOfIndependentInlining
This element was declared in an independent pattern, but is now to be matched as preset, because it was inlinded in the containing pattern to speed up matching
Public fieldStorage
If not null this pattern element is to be bound by iterating the given storage (which may mean trying the single value if it is elementary).
Public fieldStorageIndex
If not null this pattern element is to be determined by a storage indexed lookup, with the accessor given here applied as index into the storage given in the Storage field.
Public fieldTempPlanMapping
plan graph node corresponding to this pattern element, used in plan graph generation, just hacked into this place
Public fieldTypeID
The type ID of the pattern element.
Public fieldtypeName
The name of the type interface of the pattern element.
Public fieldUniqueLookup
If not null this pattern element is to be determined by a unique index lookup
Public fieldunprefixedName
Pure name of the pattern element as specified in the .grg file without any prefixes.
Public fieldvisited
visited flag used to compute pattern connectedness for inlining, just hacked into this place
Top
See Also