public final class FunctionExpression extends AbstractSingleEncapsulatedExpression
New to JPA 2.1.
func_expression ::= <identifier>('function_name' {, func_item}*)
COMMA, DOT, DOUBLE_QUOTE, LEFT_CURLY_BRACKET, LEFT_PARENTHESIS, NOT_DEFINED, RIGHT_CURLY_BRACKET, RIGHT_PARENTHESIS, SINGLE_QUOTE, SPACE, UNDERSCORE
ABS, ALL, AND, ANY, AS, AS_OF, ASC, AVG, BETWEEN, BIT_LENGTH, BOTH, CASE, CAST, CHAR_LENGTH, CHARACTER_LENGTH, CLASS, COALESCE, COLUMN, CONCAT, CONNECT_BY, 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, FIRST, 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, LAST, 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, NULLS_FIRST, NULLS_LAST, OBJECT, OF, ON, OPERATOR, OR, ORDER_BY, ORDER_SIBLINGS_BY, OUTER, PLUS, POSITION, POSITIONAL_PARAMETER, QUOTE, REGEXP, SCN, SELECT, SET, SIZE, SOME, SQL, SQRT, START_WITH, SUBSTRING, SUM, TABLE, THEN, TIMESTAMP, TRAILING, TREAT, TRIM, TRUE, TYPE, UNION, UNKNOWN, UPDATE, UPPER, VALUE, WHEN, WHERE
Constructor and Description |
---|
FunctionExpression(AbstractExpression parent,
java.lang.String identifier)
Creates a new
FuncExpression . |
FunctionExpression(AbstractExpression parent,
java.lang.String identifier,
FunctionExpressionFactory.ParameterCount parameterCount,
java.lang.String parameterQueryBNFId)
Creates a new
FunctionExpression . |
Modifier and Type | Method and Description |
---|---|
void |
accept(ExpressionVisitor visitor)
Visits this
Expression by the given visitor . |
java.lang.String |
getEncapsulatedExpressionQueryBNFId()
Returns the BNF used to parse the encapsulated expression.
|
java.lang.String |
getFunctionName()
Returns the name of the SQL function.
|
FunctionExpressionFactory.ParameterCount |
getParameterCount()
Returns the number of parameters a
FunctionExpression can have, which will be during
validation. |
JPQLQueryBNF |
getQueryBNF()
Returns the BNF of this
Expression . |
java.lang.String |
getUnquotedFunctionName()
Returns the name of the SQL function.
|
boolean |
hasComma()
Determines whether the comma was parsed after the function name.
|
boolean |
hasEncapsulatedExpression()
Determines whether something was parsed after the left parenthesis.
|
boolean |
hasFunctionName()
Determines whether the function name was parsed.
|
boolean |
hasSpaceAfterComma()
Determines whether a whitespace was parsed after the comma.
|
acceptChildren, findQueryBNF, getExpression, hasExpression, setExpression
getActualIdentifier, getIdentifier, hasLeftParenthesis, hasRightParenthesis, hasSpaceAfterIdentifier
children, getGrammar, getIdentifierVersion, getLength, getOffset, getParent, getQueryBNF, getRoot, isAncestor, orderedChildren, populatePosition, toActualText, toParsedText, toString
public FunctionExpression(AbstractExpression parent, java.lang.String identifier)
FuncExpression
.parent
- The parent of this expressionidentifier
- The JPQL identifierpublic FunctionExpression(AbstractExpression parent, java.lang.String identifier, FunctionExpressionFactory.ParameterCount parameterCount, java.lang.String parameterQueryBNFId)
FunctionExpression
.parent
- The parent of this expressionidentifier
- The JPQL identifierparameterCount
- The number of parameters
a FunctionExpression
can haveparameterQueryBNFId
- The unique identifier of the JPQLQueryBNF
that will be used
to parse the arguments of the function expressionpublic void accept(ExpressionVisitor visitor)
Expression
by the given visitor
.visitor
- The ExpressionVisitor
to visit this objectpublic java.lang.String getEncapsulatedExpressionQueryBNFId()
getEncapsulatedExpressionQueryBNFId
in class AbstractSingleEncapsulatedExpression
public java.lang.String getFunctionName()
public FunctionExpressionFactory.ParameterCount getParameterCount()
FunctionExpression
can have, which will be during
validation.public JPQLQueryBNF getQueryBNF()
Expression
.JPQLQueryBNF
, which represents the grammar of this Expression
public java.lang.String getUnquotedFunctionName()
public boolean hasComma()
true
if a comma was parsed after the function name and the first
expression; false
otherwisepublic boolean hasEncapsulatedExpression()
hasEncapsulatedExpression
in class AbstractSingleEncapsulatedExpression
true
if something was parsed; false
otherwisepublic boolean hasFunctionName()
true
if the function name was parsed; false
otherwisepublic boolean hasSpaceAfterComma()
true
if there was a whitespace after the comma; false
otherwiseEclipseLink 2.6.3, "build v20160428-59c81c5" API Reference