Click or drag to resize

de.unika.ipd.grGen.lgsp Namespace

 
Classes
  ClassDescription
Public classAlternative
An alternative is a pattern graph element containing subpatterns of which one must get successfully matched so that the entire pattern gets matched successfully.
Public classAlternatives_Enumerable
enumerable returning enumerator over submatches due to alternatives
Public classAlternatives_Enumerator
enumerator over submatches due to alternatives
Public classConnectednessCheck
Public classEdges_Enumerable
enumerable returning enumerator over edges in match
Public classEdges_Enumerator
enumerator over edges in match
Public classEmbeddedGraphs_Enumerable
enumerable returning enumerator over submatches due to subpatterns
Public classEmbeddedGraphs_Enumerator
enumerator over submatches due to subpatterns
Public classFilterGenerator
The C#-part responsible for generating the post-matches filters.
Public classFoundMatch
A helper class containing a match found by iteration plan execution
Public classGlobalVariableAccess
Representation of a global variable accessed from within a pattern (match from storage constructs)
Public classGraphMatchingState
Helper class with stuff needed for IsIsomorph checking of graphs
Public classGraphStatisticsParserSerializer
A class for serializing and parsing the statistics from a graph (cf. LGSPGraphStatistics)
Public classIndependents_Enumerable
enumerable returning enumerator over submatches due to independents
Public classIndependents_Enumerator
enumerator over submatches due to independents
Public classIndexAccess
Base class for index accesses, used to bind a pattern element from an index.
Public classIndexAccessAscending
Representation of an index access, accessed by enumerating ascendingly.
Public classIndexAccessDescending
Representation of an index access, accessed by enumerating descendingly.
Public classIndexAccessEquality
Representation of an index access, accessed by enumerating equal keys.
Public classInterpretationPlan
Base class of the interpretation plan data structure, which consists of a linked list of matching operations (Benefits compared to scheduled search plan: - stores matched graph elements - connectedness checking with bidirectional matching is complicated enough it should be computed statically before execution) The interpretation plan is only used in isomorphy checking.
Public classInterpretationPlanBothDirections
Interpretation plan operation that iterates both directions, needed for matching bidirectional edges in both directions
Public classInterpretationPlanBuilder
A class for building the interpretation plan data structure from a scheduled search plan
Public classInterpretationPlanCheckCondition
Interpretation plan operation that checks the AreAttribuesEqual condition
Public classInterpretationPlanCheckConnectednessSource
Interpretation plan operation that checks the source node of an edge to be identical to a given node
Public classInterpretationPlanCheckConnectednessSourceOrTarget
Interpretation plan operation that checks the source or target node of an edge to be identical to a given node, depending on the current direction to be matched
Public classInterpretationPlanCheckConnectednessTarget
Interpretation plan operation that checks the target node of an edge to be identical to a given node
Public classInterpretationPlanCheckConnectednessTheOther
Interpretation plan operation that checks the source or target node of an edge to be identical to a given node, depending on the other node already matched
Public classInterpretationPlanDirectionVariable
An interpretation plan operation that stores a direction decision
Public classInterpretationPlanEdgeMatcher
An interpretation plan operation that matches an edge
Public classInterpretationPlanImplicitSource
Interpretation plan operation that retrieves the source node of an edge
Public classInterpretationPlanImplicitSourceOrTarget
Interpretation plan operation that retrieves the source or target node of an edge depending on the current direction to be matched
Public classInterpretationPlanImplicitTarget
Interpretation plan operation that retrieves the target node of an edge
Public classInterpretationPlanImplicitTheOther
Interpretation plan operation that retrieves the source or target node of an edge depending on the other node already matched
Public classInterpretationPlanIncoming
Interpretation plan operation that retrieves an incoming edge from a source node
Public classInterpretationPlanIncomingOrOutgoing
Interpretation plan operation that retrieves an edge to be matched bidirectionally from a source node
Public classInterpretationPlanLookupEdge
Interpretation plan operation that looks up an edge in the graph
Public classInterpretationPlanLookupNode
Interpretation plan operation that looks up a node in the graph
Public classInterpretationPlanMatchComplete
Interpretation plan operation that completes a match; no own functionality, it just succeeds when execution reaches it
Public classInterpretationPlanNodeMatcher
An interpretation plan operation that matches a node
Public classInterpretationPlanOutgoing
Interpretation plan operation that retrieves an outgoing edge from a source node
Public classInterpretationPlanStart
Interpretation plan operation that works as an anchor for an interpretation plan without own functionality
Public classIsomorphyInformation
Public classIterated
An iterated is a pattern graph element containing the subpattern to be matched iteratively and the information how much matches are needed for success and how much matches to obtain at most
Public classIterateds_Enumerable
enumerable returning enumerator over submatches due to iterateds, with every submatch being a list of matches of the iterated-pattern
Public classIterateds_Enumerator
enumerator over submatches due to iterateds, with every submatch being a list of matches of the iterated-pattern
Public classLGSPAction
An object representing an executable rule of the LGSPBackend.
Public classLGSPActionExecutionEnvironment
An implementation of the IGraphProcessingEnvironment, to be used with LGSPGraphs.
Public classLGSPActions
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.
Public classLGSPBackend
A helper class for backend independent graph and rule handling.
Public classLGSPDeferredSequencesManager
A class for managing deferred sequence execution.
Public classLGSPEdge
Class implementing edges in the libGr search plan backend
Public classLGSPEdgeHead
Special head edge of the lists containing all the edges of one type
Public classLGSPEmbeddedSequenceClosure
A closure for an exec statement in an alternative, iterated or subpattern, containing the entities needed for the exec execution. These exec are executed at the end of the rule which directly or indirectly used them, long after the alternative/iterated/subpattern modification containing them has been applied. The real stuff depends on the xgrs and is generated, implementing this abstract class.
Public classLGSPFilter
A description of a filter of a rule or match class
Public classLGSPFilterAutoGenerated
A description of an auto-generated filter of a rule or match class
Public classLGSPFilterAutoSupplied
A description of an auto-supplied filter of a rule or match class.
Public classLGSPFilterFunction
A description of a filter function of a rule or match class
Public classLGSPGlobalVariables
An implementation of the IGlobalVariables, to be used with LGSPGraphProcessingEnvironments.
Public classLGSPGraph
An implementation of the IGraph interface.
Public classLGSPGraphModel
A model of a GrGen graph, base class from implementation. Defines a thin layer above IGraphModel, enriched with index creating functionality, the real stuff is generated. It allows the generic LGSPGraph to create and bind the index set when it is configured with the graph model.
Public classLGSPGraphProcessingEnvironment
An implementation of the IGraphProcessingEnvironment, to be used with LGSPGraphs.
Public classLGSPGraphStatistics
A class for analyzing a graph and storing the statistics about the graph
Public classLGSPGrGen
The C#-part of the GrGen.NET frontend. It is responsible for generating initial actions with static search plans. (and compiling the XGRSs of the exec statements vie LGSPSequenceGenerator)
Public classLGSPMatcherGenerator
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.
Public classLGSPMatchesListMatch, 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, OnPreMatched, 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.
Public classLGSPMatchingPattern
A description of a GrGen matching pattern, that's a subpattern/subrule or the base for some rule.
Public classLGSPNamedGraph
An implementation of the INamedGraph interface.
Public classLGSPNode
Class implementing nodes in the libGr search plan backend
Public classLGSPNodeHead
Special head node of the lists containing all the nodes of one type
Public classLGSPObject
Class implementing objects in the libGr search plan backend (values of internal non-node/edge classes)
Public classLGSPRuleAndMatchingPatterns
Class which instantiates and stores all the rule and subpattern representations ready for iteration
Public classLGSPRulePattern
A description of a GrGen rule.
Public classLGSPSequenceGenerator
The C#-part responsible for compiling the XGRSs of the exec statements.
Public classLGSPSubactionAndOutputAdditionEnvironment
An implementation of the ISubactionAndOutputAdditionEnvironment, to be used with LGSPGraphs.
Public classLGSPSubpatternAction
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.
Public classLGSPTransactionManager
A class for managing graph transactions.
Public classLGSPTransientObject
Class implementing transient objects in the libGr search plan backend (values of internal non-node/edge classes)
Public classLGSPUndoAttributeChanged
Public classLGSPUndoElemAdded
Public classLGSPUndoElemRedirecting
Public classLGSPUndoElemRemoved
Public classLGSPUndoElemRetyped
Public classLGSPUndoGraphChange
Public classLGSPUndoSettingVisited
Public classLGSPUndoTransactionStarted
Public classLGSPUndoVisitedAlloc
Public classLGSPUndoVisitedFree
Public classLGSPUniquenessEnsurer
A class ensuring unique ids for nodes and edges with a minimum amount of gaps. Gets instantiated in case support for unique nodes/edges was declared in the model.
Public classLGSPUniquenessIndex
A class ensuring unique ids for nodes and edges with a minimum amount of gaps, and allowing to access them by their unique id, similar to an index (and esp. the name map). Gets instantiated in case support for unique nodes/edges was declared in the model, and support for accessing nodes/edges by a unique id.
Public classMatchListElementT
Element of invasively linked list of T, and Match
Public classNameLookup
Representation of a name map lookup.
Public classNeededEntitiesEmitter
Class for emitting the needed entities of a sequence, in a pre-run before emitting the real code (by the SequenceGenerator).
Public classNodes_Enumerable
enumerable returning enumerator over nodes in match
Public classNodes_Enumerator
enumerator over nodes in match
Public classPairS, T
Public classPatternCondition
Representation of some condition which must be true for the pattern containing it to be matched
Public classPatternEdge
A pattern edge of a rule pattern.
Public classPatternElement
An element of a rule pattern.
Public classPatternGraph
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
Public classPatternGraphAnalyzer
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).
Public classPatternGraphEmbedding
Embedding of a subpattern into it's containing pattern
Public classPatternNode
A pattern node of a rule pattern.
Public classPatternpathIsomorphyChecker
Class containing global functions for checking whether node/edge is matched on patternpath
Public classPatternVariable
A pattern variable of a rule pattern.
Public classPatternYielding
Representation of some yielding (a list of elementary yieldings, to be executed after matching completed)
Public classPlanEdge
A plan edge represents a matching operation and its costs.
Public classPlanGraph
The plan graph data structure for the MSA-algorithm.
Public classPlanGraphGenerator
Class for generating a plan graph out of a pattern graph.
Public classPlanNode
Element of the plan graph representing a node or edge within the pattern graph or a root node.
Public classPlanPseudoNode
Common base class for the PlanNodes and PlanSuperNodes, used for uniform access to the derived nodes within the minimum spanning arborescent computation.
Public classPlanSuperNode
Element of the plan graph representing a strongly connected component within the pattern graph. Hierachically nested.
Public classPriorityQueueT
Public classQualificationAccess
Representation of an owner.attribute qualification
Public classScheduledSearchPlan
The scheduled search plan is a list of search operations, plus the information which nodes/edges are homomorph
Public classScheduleDumper
Public classScheduleEnricher
Class enriching schedules with homomorphy information, merging negative and independent schedules into the main schedule, and parallelizing schedules.
Public classScheduleExplainer
Public classSearchOperation
Search operation with information about homomorphic mapping. Element of the scheduled search plan.
Public classSearchPlanEdge
A search plan edge represents a matching operation and its costs.
Public classSearchPlanEdgeNode
Element of the search plan graph representing an edge within the pattern graph.
Public classSearchPlanGraph
The search plan graph data structure for scheduling.
Public classSearchPlanGraphGeneratorAndScheduler
Class for generating a search plan graph out of a plan graph and for creating a schedule out of it.
Public classSearchPlanNode
Element of the search plan graph representing an element within the pattern graph or a root node.
Public classSearchPlanNodeNode
Element of the search plan graph representing a node within the pattern graph.
Public classSequenceComputationGenerator
The sequence computation generator contains code to generate sequence computations; it is in use by the sequence generator.
Public classSequenceComputationGeneratorHelper
The sequence computation generator helper contains code for (sequence/sequence computation) result variable handling.
Public classSequenceContainerConstructorEmitter
The C#-part responsible for emitting the container constructor expressions that appear in an exec statement, in a post-run after generating the sequence.
Public classSequenceExpressionGenerator
The sequence expression generator contains code to generate a sequence expression, it is in use by the sequence computation generator and the sequence generator, and also called by the sequence generator helper.
Public classSequenceExpressionGeneratorHelper
The sequence expression generator helper generates the code for the sequence expression operators, in case the (result) type is known statically (same semantics as calling the SequenceExpressionExecutionHelper, but faster due to statically known types).
Public classSequenceGenerator
The sequence generator contains code to generate sequences, the sequence trees to be more precise, it is used by the lgsp sequence generator driver, emitting sequence heads and surrounding code.
Public classSequenceGeneratorHelper
The sequence generator helper contains miscellaneous code in use by the sequence generator, sequence computation generator, and sequence expression generator. It esp. contains parameter type information and code for parameter building, as well as type computation, variable access and constant generation.
Public classSimpleGraphCanonizer
Public classSourceBuilder
Pretty printing helper class for source code generation
Public classStorageAccess
Representation of a storage access, used to bind a pattern element.
Public classStorageAccessIndex
Representation of a storage access index, used to bind a pattern element.
Public classThreadPool
A thread pool for parallel sequence execution
Public classUniqueLookup
Representation of a unique index lookup.
Public classVariables_Enumerable
enumerable returning enumerator over variables in match
Public classVariables_Enumerator
enumerator over variables in match
Public classWorkerPool
A thread pool of workers for parallelized pattern matching
Interfaces
  InterfaceDescription
Public interfaceGraphCanonizer
Public interfaceGraphComparisonMatcher
Interface implemented by the compiled graph matchers
Enumerations
  EnumerationDescription
Public enumerationLGSPDirection
Public enumerationLGSPElemFlags
Flags for graph elements.
Public enumerationLGSPElemFlagsParallel
Flags for graph elements, for parallel matching; stored outside of the graph elements themselves, in an array per thread.
Public enumerationMatchObjectType
the types of match objects there are, to be filled by insertMatchObjectBuilding
Public enumerationPlanNodeType
Public enumerationSearchOperationType
Describes the type of a search operation.
Public enumerationUndoOperation