|
Oracle Fusion Middleware Java API Reference for Oracle TopLink 11g Release 1 (11.1.1) E28847-01 |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object
org.eclipse.persistence.jpa.internal.jpql.parser.StringExpression
org.eclipse.persistence.jpa.internal.jpql.parser.AbstractExpression
org.eclipse.persistence.jpa.internal.jpql.parser.CompoundExpression
public abstract class CompoundExpression
A compound expression has a left and right expressions combined by an identifier.
expression ::= left_expression identifier right_expression
Field Summary | |
---|---|
private boolean |
hasSpaceAfterIdentifier Determines whether a whitespace is present after the identifier. |
private AbstractExpression |
leftExpression The left side of the arithmetic expression. |
private AbstractExpression |
rightExpression The right side of the arithmetic expression. |
Fields inherited from class org.eclipse.persistence.jpa.internal.jpql.parser.AbstractExpression |
---|
COMMA, DOT, DOUBLE_QUOTE, LEFT_CURLY_BRACKET, LEFT_PARENTHESIS, NOT_DEFINED, RIGHT_CURLY_BRACKET, RIGHT_PARENTHESIS, SINGLE_QUOTE, SPACE, UNDERSCORE |
Constructor Summary | |
---|---|
CompoundExpression(AbstractExpression parent, java.lang.String identifier) Creates a new CompoundExpression . |
Method Summary | |
---|---|
void |
acceptChildren(ExpressionVisitor visitor) Visits the children of this Expression . |
(package private) void |
addChildrenTo(java.util.Collection<Expression> children) Adds the children of this Expression to the given collection. |
(package private) void |
addOrderedChildrenTo(java.util.List<StringExpression> children) Adds the StringExpressions representing this Expression . |
Expression |
getLeftExpression() Returns the Expression that represents the first expression, which is before the identifier. |
Expression |
getRightExpression() Returns the Expression that represents the second expression, which is after the identifier. |
boolean |
hasLeftExpression() Determines whether the first expression of the query was parsed. |
boolean |
hasRightExpression() Determines whether the second expression of the query was parsed. |
boolean |
hasSpaceAfterIdentifier() Determines whether a whitespace was parsed after the identifier. |
(package private) void |
parse(WordParser wordParser, boolean tolerant) Parses the query by starting at the current position, which is part of the given WordParser . |
(package private) abstract java.lang.String |
parseIdentifier(WordParser wordParser) Parses the identifier of this expression. |
abstract JPQLQueryBNF |
rightExpressionBNF() Returns the BNF used to determine how to parse the right expression. |
(package private) void |
setLeftExpression(AbstractExpression leftExpression) Sets the given Expression to be the first expression of this compound one. |
(package private) void |
setRightExpression(AbstractExpression rightExpression) Sets the given Expression to be the second expression of this compound one. |
(package private) void |
toParsedText(java.lang.StringBuilder writer, boolean includeVirtual) Generates a string representation of this Expression . |
Methods inherited from class org.eclipse.persistence.jpa.internal.jpql.parser.AbstractExpression |
---|
buildExpressionFromFallingBack, buildNullExpression, buildStringExpression, buildStringExpression, buildUnknownExpression, children, expressionFactory, expressionFactoryForIdentifier, findQueryBNF, getChildren, getJPAVersion, getParent, getQueryBNF, getRoot, getText, handleAggregate, identifierRole, identifiers, identifiers, identifierVersion, isAncestor, isIdentifier, isNull, isParsingComplete, isTolerant, isUnknown, isVirtual, orderedChildren, parse, parseSingleExpression, populatePosition, queryBNF, readdLeadingSpaces, 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 |
Methods inherited from interface org.eclipse.persistence.jpa.internal.jpql.parser.Expression |
---|
accept |
Field Detail |
---|
private boolean hasSpaceAfterIdentifier
private AbstractExpression leftExpression
private AbstractExpression rightExpression
Constructor Detail |
---|
CompoundExpression(AbstractExpression parent, java.lang.String identifier)
CompoundExpression
.
parent
- The parent of this expressionidentifier
- The identifier of this expressionMethod Detail |
---|
public void acceptChildren(ExpressionVisitor visitor)
Expression
. This method can be used to optimize traversing the children since a new list is not created every time Expression.children()
or Expression.getChildren()
is called.
This does not traverse the Expression
sub-hierarchy, use an subclass of AbstractTraverseChildrenVisitor
in order to traverse the entire sub-hierarchy.
visitor
- The visitor
to visit the children of this object.final void addChildrenTo(java.util.Collection<Expression> children)
Expression
to the given collection.addChildrenTo
in class AbstractExpression
children
- The collection used to store the childrenfinal void addOrderedChildrenTo(java.util.List<StringExpression> children)
StringExpressions
representing this Expression
.addOrderedChildrenTo
in class AbstractExpression
children
- The list used to store the string representation of this Expression
public final Expression getLeftExpression()
Expression
that represents the first expression, which is before the identifier.public final Expression getRightExpression()
Expression
that represents the second expression, which is after the identifier.public final boolean hasLeftExpression()
true
if the first expression was parsed; false
if it was not parsedpublic final boolean hasRightExpression()
true
if the second expression was parsed; false
if it was not parsedpublic final boolean hasSpaceAfterIdentifier()
true
if there was a whitespace after the identifier; false
otherwisefinal void parse(WordParser wordParser, boolean tolerant)
WordParser
.parse
in class AbstractExpression
wordParser
- The text to parse based on the current position of the cursortolerant
- Determines whether the parsing system should be tolerant, meaning if it should try to parse invalid or incomplete queriesabstract java.lang.String parseIdentifier(WordParser wordParser)
text
- The text to parse, which starts with the identifierpublic abstract JPQLQueryBNF rightExpressionBNF()
final void setLeftExpression(AbstractExpression leftExpression)
Expression
to be the first expression of this compound one.leftExpression
- The expression that was parsed before the identifierfinal void setRightExpression(AbstractExpression rightExpression)
Expression
to be the second expression of this compound one.rightExpression
- The expression that was parsed after the identifierfinal void toParsedText(java.lang.StringBuilder writer, boolean includeVirtual)
Expression
.toParsedText
in class AbstractExpression
writer
- The buffer used to append this Expression
's string representationincludeVirtual
- Determines whether to include any characters that are considered virtual, i.e. that was parsed when the query is incomplete and is needed for functionality like content assist
|
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |