protected abstract static class AbstractContentAssistVisitor.AbstractConditionalClauseCollectionHelper<T extends Expression> extends java.lang.Object implements AbstractContentAssistVisitor.CollectionExpressionHelper<T>
| Modifier | Constructor and Description |
|---|---|
protected |
AbstractConditionalClauseCollectionHelper(AbstractContentAssistVisitor visitor) |
| Modifier and Type | Method and Description |
|---|---|
void |
addAtTheEndOfChild(Expression expression,
CollectionExpression collectionExpression,
int index,
boolean hasComma,
boolean virtualSpace)
Adds the proposals because the cursor is at the end of the child at the given position.
|
void |
addIdentifier(Expression expression,
java.lang.String identifier)
Adds the given JPQL identifier as a valid proposal.
|
void |
addTheBeginningOfChild(Expression expression,
CollectionExpression collectionExpression,
int index,
boolean hasComma)
Adds the proposals because the cursor is at the beginning of the child
Expression
at the given position. |
boolean |
canContinue(Expression expression,
CollectionExpression collectionExpression,
int index)
Asks this helper if the search can continue even though two child expressions are not
separated by a comma.
|
protected java.lang.Object[] |
findChild(CollectionExpression collectionExpression,
int index)
Handles a special case for a compound identifier like 'IS EMPTY' or 'IS NOT EMPTY'.
|
int |
maxCollectionSize(Expression expression)
Returns the maximum number of encapsulated
expressions the Expression
allows. |
int |
preExpressionLength(Expression expression)
Returns the length of anything that can be defined before the first child.
|
JPQLQueryBNF |
queryBNF(Expression expression,
int index)
Returns the
JPQLQueryBNF that defines the fragment at the given position. |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitbuildCollectionExpression, hasDelimiterAfterIdentifierprotected AbstractConditionalClauseCollectionHelper(AbstractContentAssistVisitor visitor)
public void addAtTheEndOfChild(Expression expression, CollectionExpression collectionExpression, int index, boolean hasComma, boolean virtualSpace)
addAtTheEndOfChild in interface AbstractContentAssistVisitor.CollectionExpressionHelper<T extends Expression>expression - The Expression being visitedcollectionExpression - The CollectionExpression is either the child of the
given Expression or a temporary generated one that usually contains a single itemindex - The position of that child in the collection of childrenhasComma - Indicates whether a comma is present before the child at the given position;
if the index is 0, then this is false by defaultvirtualSpace - Indicates if this method is called because the cursor is at the end of
the child at the specified index but by considering there is a virtual space at the end of
that childpublic void addIdentifier(Expression expression, java.lang.String identifier)
addIdentifier in interface AbstractContentAssistVisitor.CollectionExpressionHelper<T extends Expression>expression - The Expression being visitedidentifier - The JPQL identifier to add as a valid proposalpublic void addTheBeginningOfChild(Expression expression, CollectionExpression collectionExpression, int index, boolean hasComma)
Expression
at the given position.addTheBeginningOfChild in interface AbstractContentAssistVisitor.CollectionExpressionHelper<T extends Expression>expression - The Expression being visitedcollectionExpression - The CollectionExpression is either the child of the
given Expression or a temporary generated one that usually contains a single item.
This can be null if the position is at the beginningindex - The position of the child that was scannedhasComma - Indicates whether a comma is present before the child at the given position;
if the index is 0, then this is false by defaultpublic boolean canContinue(Expression expression, CollectionExpression collectionExpression, int index)
canContinue in interface AbstractContentAssistVisitor.CollectionExpressionHelper<T extends Expression>expression - The Expression being visitedcollectionExpression - The CollectionExpressionindex - The position of the child being scannedtrue if the check can continue even though the previous child was not
separated by a comma; false to stop the checkprotected java.lang.Object[] findChild(CollectionExpression collectionExpression, int index)
collectionExpression - The CollectionExpression is used to find the Expression to use when filtering out compound identifierindex - The position to start the search, which goes from that index to the beginningExpression that can
be used when filtering out compound identifier. The second boolean element indicates if
IS was detected after the child. The third boolean element indicates if
NOT was detected after the child, which would also be after IS
if it was detected. null is returned if nothing could be foundpublic int maxCollectionSize(Expression expression)
expressions the Expression
allows. Some expression only allow 2, others 3 and others allow an unlimited number.maxCollectionSize in interface AbstractContentAssistVisitor.CollectionExpressionHelper<T extends Expression>expression - The Expression for which its maximum number of childrenpublic int preExpressionLength(Expression expression)
DISTINCT " in "AVG(DISTINCT e.name)".preExpressionLength in interface AbstractContentAssistVisitor.CollectionExpressionHelper<T extends Expression>expression - The Expression being visitedpublic JPQLQueryBNF queryBNF(Expression expression, int index)
JPQLQueryBNF that defines the fragment at the given position.queryBNF in interface AbstractContentAssistVisitor.CollectionExpressionHelper<T extends Expression>expression - The Expression being visitedindex - The position of the element to retrieve the BNF defined in the JPQL grammarJPQLQueryBNF that defines the fragment at the given position