public abstract class JPQLQueryBNF extends Object
Expression for the complete grammar
Modifier and Type | Method and Description |
---|---|
org.eclipse.persistence.jpa.internal.jpql.parser.ExpressionFactory |
expressionFactory(String identifier)
Retrieves the
ExpressionFactory that is associated with the given identifier, if the
given string is indeed a JPQL identifier. |
Set<String> |
expressionFactoryIds()
Returns the unique identifiers of the
expression
factories handled by this BNF rule. |
String |
getId()
Returns the unique identifier of this
JPQLQueryBNF . |
boolean |
handleAggregate()
Determines whether the
Expression handles a collection of sub-expressions that
are aggregated by logical or arithmetic operators. |
boolean |
handleCollection()
Determines whether the
Expression handles a collection of sub-expressions that
are separated by commas. |
boolean |
hasIdentifier(String word)
Determines if this query BNF support the given word, which can be an identifier.
|
Iterable<String> |
identifiers()
Retrieves the identifiers that are supported by this BNF.
|
boolean |
isCompound()
Determines whether this BNF has child BNFs registered only to properly parse a query or if the
child BNFs are part of the BNF.
|
Set<JPQLQueryBNF> |
nonCompoundChildren()
Returns the set of all the query BNFs that are part of this BNF.
|
String |
toString() |
public final org.eclipse.persistence.jpa.internal.jpql.parser.ExpressionFactory expressionFactory(String identifier)
ExpressionFactory
that is associated with the given identifier, if the
given string is indeed a JPQL identifier.identifier
- The JPQL identifier (in theory) that is used to retrieve the factory
responsible to parse a portion of the query starting with that identifierExpressionFactory
responsible to parse a portion of the query starting
with the given identifier; null
if nothing was registered for itpublic final Set<String> expressionFactoryIds()
expression
factories
handled by this BNF rule.ExpressionFactory
public final String getId()
JPQLQueryBNF
.JPQLQueryBNF
with AbstractExpression
public boolean handleAggregate()
Expression
handles a collection of sub-expressions that
are aggregated by logical or arithmetic operators.true
if the sub-expression to parse might have several logical and/or
arithmetic expressions; false
otherwisepublic boolean handleCollection()
Expression
handles a collection of sub-expressions that
are separated by commas.true
if the sub-expression to parse might have several sub-expressions
separated by commas; false
otherwisepublic final boolean hasIdentifier(String word)
word
- A word that could be a JPQL identifier or anything elsetrue
if the given word is a JPQL identifier and it is supported by this
BNF; false
otherwisepublic final Iterable<String> identifiers()
public boolean isCompound()
BetweenExpressionBNF
,
it registers a series of children BNFs but they shouldn't be used to determine if they are
part of that BNF since the comparator identifiers are.false
by defaultpublic final Set<JPQLQueryBNF> nonCompoundChildren()
EclipseLink 2.3.2, "build v20111125-r10461" API Reference