Package org.datanucleus.store.query.compiler
package org.datanucleus.store.query.compiler
Package handling the (generic) compilation of queries.
Provides compilation of "string-based" queries. Provides handling for different query languages such as JDOQL and JPQL.
Compilation of a string-based query goes through two steps.
- Parse of the string converting each component of the query into a Node tree
- Compilation of the Node tree into an expression tree
-
ClassDescriptionAbstract query parser.Base symbol resolver, to be extended for particular query languages.Enum defining the component of a query being compiled.Interface to be implemented by an "optimiser" for the query compilation process.Typical implementation of a compiler for a java-based query language.Implementation of a compiler for JDOQL (JSR0012, JSR0243).Implementation of a parser for JDOQL query language.Symbol resolver for JDOQL.Implementation of a compiler for JPQL (JSR0220, JSR0317).Implementation of a parser for JPQL query language.Symbol resolver for JPQL.Lexer for a Query.Optimiser for query compilation that searches for navigation through relations, and adds "not null" checks.Representation of a node in a tree of nodes.Enum of node types.Node representing a parameter.Interface for a parser of a query.Symbol representing a property/identifier in a query.Representation of the components of a compiled java "string-based" query.Exception thrown when a query compiler finds an error relative to the expected syntax.A symbol in a query.Interface for use in the resolution of symbols during query compilation.Table of symbols in a query.Optimiser for query compilation that searches for variable equality like "var == this".