Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "VIATRA/Query/DeveloperDocumentation/QueryEngineArchitecture"
(Split) |
m (Harmath.incquerylabs.com moved page VIATRA/Query/DeveloperDocumentation/IncQueryEngineArchitecture to VIATRA/Query/DeveloperDocumentation/QueryEngineArchitecture: Project merge) |
(No difference)
|
Revision as of 08:31, 25 March 2016
VIATRA Query Engine Internals
Overview
Most important concepts
- ViatraQueryEngine: the central element of the API.
- ViatraQueryScope: the set of model elements the ViatraQueryEngine should work on. The project itself implements only EMFScope right now.
- EMFQueryRuntimeContext: wrapper class for the query backends to access the model. The access can be both indexed and non-indexed.
- IQueryBackend: an executor of graph pattern matches; it instantiates IResultProviders. Query Backends needs to be registered to the ViatraQueryEngine itself.
- RetePatternMatcher is the fully incremental implementation of the IResultProvider interface.
- LocalSearchMatcher is a local search based implementation of the IResultProvider interface.
- The Matcher interface is the public matcher API: generated instances are type-safe.