EclipseLink 2.4.2, build 'v20130514-5956486' API Reference

org.eclipse.persistence.jpa.jpql.parser
Class SubExpression

java.lang.Object
  extended by org.eclipse.persistence.jpa.jpql.parser.AbstractExpression
      extended by org.eclipse.persistence.jpa.jpql.parser.AbstractEncapsulatedExpression
          extended by org.eclipse.persistence.jpa.jpql.parser.AbstractSingleEncapsulatedExpression
              extended by org.eclipse.persistence.jpa.jpql.parser.SubExpression
All Implemented Interfaces:
Expression

public final class SubExpression
extends AbstractSingleEncapsulatedExpression

This expression wraps a sub-expression within parenthesis.

BNF: expression ::= (sub_expression)

Version:
2.4.2
Author:
Pascal Filion
Since:
2.3

Field Summary
 
Fields inherited from class org.eclipse.persistence.jpa.jpql.parser.AbstractExpression
COMMA, DOT, DOUBLE_QUOTE, LEFT_CURLY_BRACKET, LEFT_PARENTHESIS, NOT_DEFINED, RIGHT_CURLY_BRACKET, RIGHT_PARENTHESIS, SINGLE_QUOTE, SPACE, UNDERSCORE
 
Fields inherited from interface org.eclipse.persistence.jpa.jpql.parser.Expression
ABS, ALL, AND, ANY, AS, ASC, AVG, BETWEEN, BIT_LENGTH, BOTH, CASE, CAST, CHAR_LENGTH, CHARACTER_LENGTH, CLASS, COALESCE, COLUMN, CONCAT, COUNT, CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP, DELETE, DELETE_FROM, DESC, DIFFERENT, DISTINCT, DIVISION, ELSE, EMPTY, END, ENTRY, EQUAL, ESCAPE, EXCEPT, EXISTS, EXTRACT, FALSE, FETCH, FROM, FUNC, FUNCTION, GREATER_THAN, GREATER_THAN_OR_EQUAL, GROUP_BY, HAVING, IN, INDEX, INNER, INNER_JOIN, INNER_JOIN_FETCH, INTERSECT, IS, IS_EMPTY, IS_NOT_EMPTY, IS_NOT_NULL, IS_NULL, JOIN, JOIN_FETCH, KEY, LEADING, LEFT, LEFT_JOIN, LEFT_JOIN_FETCH, LEFT_OUTER_JOIN, LEFT_OUTER_JOIN_FETCH, LENGTH, LIKE, LOCATE, LOWER, LOWER_THAN, LOWER_THAN_OR_EQUAL, MAX, MEMBER, MEMBER_OF, MIN, MINUS, MOD, MULTIPLICATION, NAMED_PARAMETER, NEW, NOT, NOT_BETWEEN, NOT_EQUAL, NOT_EXISTS, NOT_IN, NOT_LIKE, NOT_MEMBER, NOT_MEMBER_OF, NULL, NULLIF, NULLS_FIRST, NULLS_LAST, OBJECT, OF, ON, OPERATOR, OR, ORDER_BY, OUTER, PLUS, POSITION, POSITIONAL_PARAMETER, QUOTE, REGEXP, SELECT, SET, SIZE, SOME, SQL, SQRT, SUBSTRING, SUM, TABLE, THEN, TRAILING, TREAT, TRIM, TRUE, TYPE, UNION, UNKNOWN, UPDATE, UPPER, VALUE, WHEN, WHERE
 
Constructor Summary
SubExpression(AbstractExpression parent, java.lang.String queryBNF)
          Creates a new SubExpression.
 
Method Summary
 void accept(ExpressionVisitor visitor)
          Visits this Expression by the given visitor.
protected  boolean areLogicalIdentifiersSupported()
          
 java.lang.String encapsulatedExpressionBNF()
          Returns the BNF used to parse the encapsulated expression.
 JPQLQueryBNF findQueryBNF(Expression expression)
          Retrieves the JPQLQueryBNF that represents the fragment of this Expression that was used when parsing the given Expression.
 JPQLQueryBNF getQueryBNF()
          Returns the BNF of this Expression.
protected  java.lang.String parseIdentifier(WordParser wordParser)
          Parses the identifier of this expression.
 
Methods inherited from class org.eclipse.persistence.jpa.jpql.parser.AbstractSingleEncapsulatedExpression
acceptChildren, addChildrenTo, addOrderedEncapsulatedExpressionTo, getExpression, hasEncapsulatedExpression, hasExpression, parseEncapsulatedExpression, removeEncapsulatedExpression, setExpression, toParsedTextEncapsulatedExpression
 
Methods inherited from class org.eclipse.persistence.jpa.jpql.parser.AbstractEncapsulatedExpression
addOrderedChildrenTo, getActualIdentifier, getIdentifier, hasLeftParenthesis, hasRightParenthesis, hasSpaceAfterIdentifier, isParsingComplete, parse, shouldParseRightParenthesis, toParsedText
 
Methods inherited from class org.eclipse.persistence.jpa.jpql.parser.AbstractExpression
acceptUnknownVisitor, acceptUnknownVisitor, buildExpressionFromFallingBack, buildNullExpression, buildStringExpression, buildStringExpression, buildUnknownExpression, calculatePosition, children, findFallBackExpressionFactory, getExpressionFactory, getExpressionRegistry, getGrammar, getIdentifierVersion, getJPAVersion, getLength, getOffset, getParent, getQueryBNF, getRoot, getText, handleAggregate, handleCollection, isAncestor, isIdentifier, isNull, isTolerant, isUnknown, isVirtual, orderedChildren, parse, parseUsingExpressionFactory, populatePosition, rebuildActualText, rebuildParsedText, setParent, setText, shouldParseWithFactoryFirst, shouldSkipLiteral, toActualText, toParsedText, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

SubExpression

public SubExpression(AbstractExpression parent,
                     java.lang.String queryBNF)
Creates a new SubExpression.

Parameters:
parent - The parent of this expression
queryBNF - The BNF coming from the parent that is used to parse the next portion of the query
Method Detail

accept

public void accept(ExpressionVisitor visitor)
Visits this Expression by the given visitor.

Parameters:
visitor - The ExpressionVisitor to visit this object

areLogicalIdentifiersSupported

protected boolean areLogicalIdentifiersSupported()

Overrides:
areLogicalIdentifiersSupported in class AbstractEncapsulatedExpression

encapsulatedExpressionBNF

public java.lang.String encapsulatedExpressionBNF()
Returns the BNF used to parse the encapsulated expression.

Specified by:
encapsulatedExpressionBNF in class AbstractSingleEncapsulatedExpression
Returns:
The BNF used to parse the encapsulated expression

findQueryBNF

public JPQLQueryBNF findQueryBNF(Expression expression)
Retrieves the JPQLQueryBNF that represents the fragment of this Expression that was used when parsing the given Expression.

Specified by:
findQueryBNF in interface Expression
Overrides:
findQueryBNF in class AbstractSingleEncapsulatedExpression
Parameters:
expression - The Expression that is a descendant of this one
Returns:
The JPQLQueryBNF that was used to parse the given expression

getQueryBNF

public JPQLQueryBNF getQueryBNF()
Returns the BNF of this Expression.

Returns:
The JPQLQueryBNF, which represents the grammar of this Expression

parseIdentifier

protected java.lang.String parseIdentifier(WordParser wordParser)
Parses the identifier of this expression.

Specified by:
parseIdentifier in class AbstractEncapsulatedExpression
Returns:
The identifier for this expression

EclipseLink 2.4.2, build 'v20130514-5956486' API Reference