The libGr class library together with the libGr search plan backend v2.5
de.unika.ipd.grGen.lgsp Namespace
Namespacesde.unika.ipd.grGen.lgsp
 
Declaration Syntax
C#
namespace de.unika.ipd.grGen.lgsp
Types
All TypesClassesInterfacesEnumerations
IconTypeDescription
Alternative
An alternative is a pattern graph element containing subpatterns of which one must get successfully matched so that the entire pattern gets matched successfully.

Alternatives_Enumerable
enumerable returning enumerator over submatches due to alternatives

Alternatives_Enumerator
enumerator over submatches due to alternatives

Edges_Enumerable
enumerable returning enumerator over edges in match

Edges_Enumerator
enumerator over edges in match

EmbeddedGraphs_Enumerable
enumerable returning enumerator over submatches due to subpatterns

EmbeddedGraphs_Enumerator
enumerator over submatches due to subpatterns

Independents_Enumerable
enumerable returning enumerator over submatches due to independents

Independents_Enumerator
enumerator over submatches due to independents

IsomorphyInformation
Iterateds_Enumerable
enumerable returning enumerator over submatches due to iterateds, with every submatch being a list of matches of the iterated-pattern

Iterateds_Enumerator
enumerator over submatches due to iterateds, with every submatch being a list of matches of the iterated-pattern

IUndoItem
LGSPAction
An object representing an executable rule of the LGSPBackend.

LGSPActions
A container of rules also managing some parts of rule application with sequences. Abstract base class with empty actions, the derived classes fill the actions dictionary.

LGSPBackend
A helper class for backend independent graph and rule handling.

LGSPDir
LGSPEdge
Class implementing edges in the libGr search plan backend

LGSPEdgeHead
Special head edge of the lists containing all the edges of one type

LGSPElemFlags
Flags for graph elements.

LGSPGraph
An implementation of the IGraph interface.

LGSPGrGen
The C#-part of the GrGen.NET frontend. It is responsible for compiling the XGRSs of the exec statements and generating initial actions with static search plans.

LGSPMatcherGenerator
Class generating matcher programs out of rules. A PatternGraphAnalyzer must run before the matcher generator is used, so that the analysis data is written the pattern graphs of the matching patterns to generate code for.

LGSPMatchesList<(Of <(Match, MatchInterface>)>)
An object representing a (possibly empty) set of matches in a graph before the rewrite has been applied. It is returned by IAction.Match() and given to the OnMatched, OnFinishing and OnFinished event. Generic to be instantiated with the exact interface and the exact implementation type of the match object Every generated Action contains a LGSPMatchesList, the matches contain one LGSPMatchesList per iterated pattern. A matches list stores the matches found by the last application of the action, the matches objects within the list are recycled by the next application of the action, only their content gets updated. The purpose of this list is to act as a memory manager to save new/garbage collection cycles and improve cache footprint. Additionally this list is used for storing the results of an iteration in the matches objects, Producer being null in this case. Then it is just used as a container for already allocated elements.

LGSPMatchingPattern
A description of a GrGen matching pattern, that's a subpattern/subrule or the base for some rule.

LGSPNode
Class implementing nodes in the libGr search plan backend

LGSPNodeHead
Special head node of the lists containing all the nodes of one type

LGSPRuleAndMatchingPatterns
Class which instantiates and stores all the rule and subpattern representations ready for iteration

LGSPRulePattern
A description of a GrGen rule.

LGSPSubpatternAction
Abstract base class for generated subpattern matching actions each object of an inheriting class represents a subpattern matching tasks which might be stored on the open tasks stack and executed later on. In addition to user-specified subpatterns, alternatives are mapped to subpattern actions, too.

LGSPTransactionManager
A class for managing graph transactions.

LGSPUndoAttributeChanged
LGSPUndoElemAdded
LGSPUndoElemRemoved
LGSPUndoElemRetyped
LGSPXGRSInfo
Represents an XGRS used in an exec statement.

ListElement<(Of <(T>)>)
Element of invasive linked list of T

Nodes_Enumerable
enumerable returning enumerator over nodes in match

Nodes_Enumerator
enumerator over nodes in match

Pair<(Of <(S, T>)>)
PatternCondition
Representation of some condition which must be true for the pattern containing it to be matched

PatternEdge
A pattern edge of a rule pattern.

PatternElement
An element of a rule pattern.

PatternGraph
Representation of the pattern to search for, containing nested alternative, iterated, negative, and independent-patterns, plus references to the rules of the used subpatterns. Accessible via IPatternGraph as meta information to the user about the matching action. Skeleton data structure for the matcher generation pipeline which stores intermediate results here, which saves us from representing the nesting structure again and again in the pipeline's data structures

PatternGraphAnalyzer
Class analyzing the pattern graphs of the matching patterns to generate code for, storing computed nesting and inter-pattern-relationships locally in the pattern graphs, ready to be used by the (local intra-pattern) code generator (to generate code more easily, to generate better code).

PatternGraphEmbedding
Embedding of a subpattern into it's containing pattern

PatternNode
A pattern node of a rule pattern.

PatternpathIsomorphyChecker
Class containing global functions for checking whether node/edge is matched on patternpath

PatternVariable
A pattern variable of a rule pattern.

PlanEdge
A plan edge represents a matching operation and its costs.

PlanGraph
The plan graph data structure for the MSA-algorithm.

PlanNode
Element of the plan graph representing a node or edge within the pattern graph or a root node.

PlanNodeType
PlanPseudoNode
Common base class for the PlanNodes and PlanSuperNodes, used for uniform access to the derived nodes within the minimum spanning arborescent computation.

PlanSuperNode
Element of the plan graph representing a strongly connected component within the pattern graph. Hierachically nested.

PriorityQueue<(Of <(T>)>)
ScheduledSearchPlan
The scheduled search plan is a list of search operations, plus the information which nodes/edges are homomorph

SearchOperation
Search operation with information about homomorphic mapping. Element of the scheduled search plan.

SearchOperationType
Describes the type of a search operation.

SearchPlanEdge
A search plan edge represents a matching operation and its costs.

SearchPlanEdgeNode
Element of the search plan graph representing an edge within the pattern graph.

SearchPlanGraph
The search plan graph data structure for scheduling.

SearchPlanNode
Element of the search plan graph representing an element within the pattern graph or a root node.

SearchPlanNodeNode
Element of the search plan graph representing a node within the pattern graph.

SourceBuilder
Pretty printing helper class for source code generation

TypesHelper
Variables_Enumerable
enumerable returning enumerator over variables in match

Variables_Enumerator
enumerator over variables in match