blob: 57c5fdce36b4fa48b7cb47f32e9b420606b48714 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_252) on Fri Jul 16 09:38:43 UTC 2021 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>AbstractExpression (EclipseLink 3.0.2, API Reference)</title>
<meta name="date" content="2021-07-16">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="AbstractExpression (EclipseLink 3.0.2, API Reference)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10,"i28":10,"i29":10,"i30":10,"i31":10,"i32":10,"i33":10,"i34":6,"i35":10,"i36":10,"i37":10,"i38":10,"i39":10,"i40":10,"i41":10,"i42":10,"i43":10,"i44":10,"i45":10,"i46":6,"i47":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage">EclipseLink 3.0.2, API Reference</div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractEncapsulatedExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpressionVisitor.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" target="_top">Frames</a></li>
<li><a href="AbstractExpression.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.eclipse.persistence.jpa.jpql.parser</div>
<h2 title="Class AbstractExpression" class="title">Class AbstractExpression</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>org.eclipse.persistence.jpa.jpql.parser.AbstractExpression</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a></dd>
</dl>
<dl>
<dt>Direct Known Subclasses:</dt>
<dd><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractConditionalClause.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractConditionalClause</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractEncapsulatedExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractEncapsulatedExpression</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractFromClause.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractFromClause</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractOrderByClause.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractOrderByClause</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractPathExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractPathExpression</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractSchemaName.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractSchemaName</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractSelectClause.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractSelectClause</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractSelectStatement.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractSelectStatement</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ArithmeticFactor.html" title="class in org.eclipse.persistence.jpa.jpql.parser">ArithmeticFactor</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AsOfClause.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AsOfClause</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/BadExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">BadExpression</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/BetweenExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">BetweenExpression</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/CaseExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">CaseExpression</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/CollectionExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">CollectionExpression</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/CollectionMemberDeclaration.html" title="class in org.eclipse.persistence.jpa.jpql.parser">CollectionMemberDeclaration</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/CollectionMemberExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">CollectionMemberExpression</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/CompoundExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">CompoundExpression</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ConnectByClause.html" title="class in org.eclipse.persistence.jpa.jpql.parser">ConnectByClause</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ConstructorExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">ConstructorExpression</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/DateTime.html" title="class in org.eclipse.persistence.jpa.jpql.parser">DateTime</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/DefaultStringExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">DefaultStringExpression</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/DeleteClause.html" title="class in org.eclipse.persistence.jpa.jpql.parser">DeleteClause</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/DeleteStatement.html" title="class in org.eclipse.persistence.jpa.jpql.parser">DeleteStatement</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/EmptyCollectionComparisonExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">EmptyCollectionComparisonExpression</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/EntityTypeLiteral.html" title="class in org.eclipse.persistence.jpa.jpql.parser">EntityTypeLiteral</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/GroupByClause.html" title="class in org.eclipse.persistence.jpa.jpql.parser">GroupByClause</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/HierarchicalQueryClause.html" title="class in org.eclipse.persistence.jpa.jpql.parser">HierarchicalQueryClause</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/IdentificationVariable.html" title="class in org.eclipse.persistence.jpa.jpql.parser">IdentificationVariable</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/IdentificationVariableDeclaration.html" title="class in org.eclipse.persistence.jpa.jpql.parser">IdentificationVariableDeclaration</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/InExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">InExpression</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/InputParameter.html" title="class in org.eclipse.persistence.jpa.jpql.parser">InputParameter</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Join.html" title="class in org.eclipse.persistence.jpa.jpql.parser">Join</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">JPQLExpression</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/KeywordExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">KeywordExpression</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/LikeExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">LikeExpression</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/NotExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">NotExpression</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/NullComparisonExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">NullComparisonExpression</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/NullExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">NullExpression</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/NumericLiteral.html" title="class in org.eclipse.persistence.jpa.jpql.parser">NumericLiteral</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/OrderByItem.html" title="class in org.eclipse.persistence.jpa.jpql.parser">OrderByItem</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/RangeVariableDeclaration.html" title="class in org.eclipse.persistence.jpa.jpql.parser">RangeVariableDeclaration</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/RegexpExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">RegexpExpression</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ResultVariable.html" title="class in org.eclipse.persistence.jpa.jpql.parser">ResultVariable</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/StringLiteral.html" title="class in org.eclipse.persistence.jpa.jpql.parser">StringLiteral</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/TableVariableDeclaration.html" title="class in org.eclipse.persistence.jpa.jpql.parser">TableVariableDeclaration</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/UnionClause.html" title="class in org.eclipse.persistence.jpa.jpql.parser">UnionClause</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/UnknownExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">UnknownExpression</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/UpdateClause.html" title="class in org.eclipse.persistence.jpa.jpql.parser">UpdateClause</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/UpdateItem.html" title="class in org.eclipse.persistence.jpa.jpql.parser">UpdateItem</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/UpdateStatement.html" title="class in org.eclipse.persistence.jpa.jpql.parser">UpdateStatement</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/WhenClause.html" title="class in org.eclipse.persistence.jpa.jpql.parser">WhenClause</a></dd>
</dl>
<hr>
<br>
<pre>public abstract class <span class="typeNameLabel">AbstractExpression</span>
extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>
implements <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a></pre>
<div class="block">This is the abstract definition of all the parts used to create the tree hierarchy representing
the parsed JPQL query.</div>
<dl>
<dt><span class="simpleTagLabel">Version:</span></dt>
<dd>2.6</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionFactory.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>ExpressionFactory</code></a>,
<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLGrammar.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>JPQLGrammar</code></a></dd>
<dt><span class="simpleTagLabel">Author:</span></dt>
<dd>Pascal Filion</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.3</dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static char</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#COMMA">COMMA</a></span></code>
<div class="block">The constant for ','.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static char</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#DOT">DOT</a></span></code>
<div class="block">The constant for '.'.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static char</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#DOUBLE_QUOTE">DOUBLE_QUOTE</a></span></code>
<div class="block">The constant for '"'.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static char</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#LEFT_CURLY_BRACKET">LEFT_CURLY_BRACKET</a></span></code>
<div class="block">The constant for '{'.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static char</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#LEFT_PARENTHESIS">LEFT_PARENTHESIS</a></span></code>
<div class="block">The constant for '('.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static char</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#NOT_DEFINED">NOT_DEFINED</a></span></code>
<div class="block">The constant for a character that is not defined.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static char</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#RIGHT_CURLY_BRACKET">RIGHT_CURLY_BRACKET</a></span></code>
<div class="block">The constant for '}'.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static char</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#RIGHT_PARENTHESIS">RIGHT_PARENTHESIS</a></span></code>
<div class="block">The constant for ')'.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static char</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#SINGLE_QUOTE">SINGLE_QUOTE</a></span></code>
<div class="block">The constant for '''.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static char</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#SPACE">SPACE</a></span></code>
<div class="block">The constant for ' '.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static char</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#UNDERSCORE">UNDERSCORE</a></span></code>
<div class="block">The constant for '_'.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.org.eclipse.persistence.jpa.jpql.parser.Expression">
<!-- -->
</a>
<h3>Fields inherited from interface&nbsp;org.eclipse.persistence.jpa.jpql.parser.<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a></h3>
<code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#ABS">ABS</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#ALL">ALL</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#AND">AND</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#ANY">ANY</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#AS">AS</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#AS_OF">AS_OF</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#ASC">ASC</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#AVG">AVG</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#BETWEEN">BETWEEN</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#BIT_LENGTH">BIT_LENGTH</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#BOTH">BOTH</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#CASE">CASE</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#CAST">CAST</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#CHAR_LENGTH">CHAR_LENGTH</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#CHARACTER_LENGTH">CHARACTER_LENGTH</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#CLASS">CLASS</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#COALESCE">COALESCE</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#COLUMN">COLUMN</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#CONCAT">CONCAT</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#CONNECT_BY">CONNECT_BY</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#COUNT">COUNT</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#CURRENT_DATE">CURRENT_DATE</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#CURRENT_TIME">CURRENT_TIME</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#CURRENT_TIMESTAMP">CURRENT_TIMESTAMP</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#DELETE">DELETE</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#DELETE_FROM">DELETE_FROM</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#DESC">DESC</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#DIFFERENT">DIFFERENT</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#DISTINCT">DISTINCT</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#DIVISION">DIVISION</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#ELSE">ELSE</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#EMPTY">EMPTY</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#END">END</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#ENTRY">ENTRY</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#EQUAL">EQUAL</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#ESCAPE">ESCAPE</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#EXCEPT">EXCEPT</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#EXISTS">EXISTS</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#EXTRACT">EXTRACT</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#FALSE">FALSE</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#FETCH">FETCH</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#FIRST">FIRST</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#FROM">FROM</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#FUNC">FUNC</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#FUNCTION">FUNCTION</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#GREATER_THAN">GREATER_THAN</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#GREATER_THAN_OR_EQUAL">GREATER_THAN_OR_EQUAL</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#GROUP_BY">GROUP_BY</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#HAVING">HAVING</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#IN">IN</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#INDEX">INDEX</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#INNER">INNER</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#INNER_JOIN">INNER_JOIN</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#INNER_JOIN_FETCH">INNER_JOIN_FETCH</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#INTERSECT">INTERSECT</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#IS">IS</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#IS_EMPTY">IS_EMPTY</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#IS_NOT_EMPTY">IS_NOT_EMPTY</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#IS_NOT_NULL">IS_NOT_NULL</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#IS_NULL">IS_NULL</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#JOIN">JOIN</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#JOIN_FETCH">JOIN_FETCH</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#KEY">KEY</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#LAST">LAST</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#LEADING">LEADING</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#LEFT">LEFT</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#LEFT_JOIN">LEFT_JOIN</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#LEFT_JOIN_FETCH">LEFT_JOIN_FETCH</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#LEFT_OUTER_JOIN">LEFT_OUTER_JOIN</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#LEFT_OUTER_JOIN_FETCH">LEFT_OUTER_JOIN_FETCH</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#LENGTH">LENGTH</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#LIKE">LIKE</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#LOCATE">LOCATE</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#LOWER">LOWER</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#LOWER_THAN">LOWER_THAN</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#LOWER_THAN_OR_EQUAL">LOWER_THAN_OR_EQUAL</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#MAX">MAX</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#MEMBER">MEMBER</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#MEMBER_OF">MEMBER_OF</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#MIN">MIN</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#MINUS">MINUS</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#MOD">MOD</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#MULTIPLICATION">MULTIPLICATION</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#NAMED_PARAMETER">NAMED_PARAMETER</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#NEW">NEW</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#NOT">NOT</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#NOT_BETWEEN">NOT_BETWEEN</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#NOT_EQUAL">NOT_EQUAL</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#NOT_EXISTS">NOT_EXISTS</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#NOT_IN">NOT_IN</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#NOT_LIKE">NOT_LIKE</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#NOT_MEMBER">NOT_MEMBER</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#NOT_MEMBER_OF">NOT_MEMBER_OF</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#NULL">NULL</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#NULLIF">NULLIF</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#NULLS">NULLS</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#NULLS_FIRST">NULLS_FIRST</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#NULLS_LAST">NULLS_LAST</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#OBJECT">OBJECT</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#OF">OF</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#ON">ON</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#OPERATOR">OPERATOR</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#OR">OR</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#ORDER_BY">ORDER_BY</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#ORDER_SIBLINGS_BY">ORDER_SIBLINGS_BY</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#OUTER">OUTER</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#PLUS">PLUS</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#POSITION">POSITION</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#POSITIONAL_PARAMETER">POSITIONAL_PARAMETER</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#QUOTE">QUOTE</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#REGEXP">REGEXP</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#SCN">SCN</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#SELECT">SELECT</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#SET">SET</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#SIZE">SIZE</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#SOME">SOME</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#SQL">SQL</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#SQRT">SQRT</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#START_WITH">START_WITH</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#SUBSTRING">SUBSTRING</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#SUM">SUM</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#TABLE">TABLE</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#THEN">THEN</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#TIMESTAMP">TIMESTAMP</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#TRAILING">TRAILING</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#TREAT">TREAT</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#TRIM">TRIM</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#TRUE">TRUE</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#TYPE">TYPE</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#UNION">UNION</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#UNKNOWN">UNKNOWN</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#UPDATE">UPDATE</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#UPPER">UPPER</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#VALUE">VALUE</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#WHEN">WHEN</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#WHERE">WHERE</a></code></li>
</ul>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier</th>
<th class="colLast" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected </code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#AbstractExpression-org.eclipse.persistence.jpa.jpql.parser.AbstractExpression-">AbstractExpression</a></span>(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractExpression</a>&nbsp;parent)</code>
<div class="block">Creates a new <code>AbstractExpression</code>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected </code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#AbstractExpression-org.eclipse.persistence.jpa.jpql.parser.AbstractExpression-java.lang.String-">AbstractExpression</a></span>(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractExpression</a>&nbsp;parent,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;text)</code>
<div class="block">Creates a new <code>AbstractExpression</code>.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#acceptUnknownVisitor-org.eclipse.persistence.jpa.jpql.parser.ExpressionVisitor-">acceptUnknownVisitor</a></span>(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionVisitor.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">ExpressionVisitor</a>&nbsp;visitor)</code>
<div class="block">The given <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionVisitor.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>ExpressionVisitor</code></a> needs to visit this class but it is defined by a third-
party provider.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#acceptUnknownVisitor-org.eclipse.persistence.jpa.jpql.parser.ExpressionVisitor-java.lang.Class-java.lang.Class-">acceptUnknownVisitor</a></span>(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionVisitor.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">ExpressionVisitor</a>&nbsp;visitor,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;&nbsp;type,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;&nbsp;parameterType)</code>
<div class="block">The given <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionVisitor.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>ExpressionVisitor</code></a> needs to visit this class but it is defined by a third-
party provider.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#addChildrenTo-java.util.Collection-">addChildrenTo</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a>&gt;&nbsp;children)</code>
<div class="block">Adds the children of this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>AbstractExpression</code></a> to the given collection.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#addOrderedChildrenTo-java.util.List-">addOrderedChildrenTo</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a>&gt;&nbsp;children)</code>
<div class="block">Adds the children of this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>AbstractExpression</code></a> to the given list.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>protected <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractExpression</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#buildExpressionFromFallingBack-org.eclipse.persistence.jpa.jpql.WordParser-java.lang.String-org.eclipse.persistence.jpa.jpql.parser.JPQLQueryBNF-org.eclipse.persistence.jpa.jpql.parser.AbstractExpression-boolean-">buildExpressionFromFallingBack</a></span>(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/WordParser.html" title="class in org.eclipse.persistence.jpa.jpql">WordParser</a>&nbsp;wordParser,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;word,
<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser">JPQLQueryBNF</a>&nbsp;queryBNF,
<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractExpression</a>&nbsp;expression,
boolean&nbsp;tolerant)</code>
<div class="block">No factories were found to create an <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> with the content of <a href="../../../../../../org/eclipse/persistence/jpa/jpql/WordParser.html" title="class in org.eclipse.persistence.jpa.jpql"><code>WordParser</code></a>,
this method will retrieve the fallback <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionFactory.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>ExpressionFactory</code></a> defined in the given <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>BNF</code></a>.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractExpression</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#buildNullExpression--">buildNullExpression</a></span>()</code>
<div class="block">Creates a new <code>null</code>-<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> parented with this one.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>protected <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#buildStringExpression-char-">buildStringExpression</a></span>(char&nbsp;value)</code>
<div class="block">Creates a new <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> wrapping the given character value.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#buildStringExpression-java.lang.String-">buildStringExpression</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;value)</code>
<div class="block">Creates a new <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> wrapping the given string value.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>protected <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractExpression</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#buildUnknownExpression-java.lang.String-">buildUnknownExpression</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;text)</code>
<div class="block">Creates an <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> that contains a malformed expression.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>protected int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#calculatePosition-org.eclipse.persistence.jpa.jpql.parser.Expression-int-">calculatePosition</a></span>(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a>&nbsp;expression,
int&nbsp;length)</code>
<div class="block">Calculates the position of the given <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> by calculating the length of what is before.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/utility/iterable/ListIterable.html" title="interface in org.eclipse.persistence.jpa.jpql.utility.iterable">ListIterable</a>&lt;<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#children--">children</a></span>()</code>
<div class="block">Returns the children of this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a>.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionFactory.html" title="class in org.eclipse.persistence.jpa.jpql.parser">ExpressionFactory</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#findFallBackExpressionFactory-org.eclipse.persistence.jpa.jpql.parser.JPQLQueryBNF-">findFallBackExpressionFactory</a></span>(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser">JPQLQueryBNF</a>&nbsp;queryBNF)</code>
<div class="block">Retrieve the <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionFactory.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>ExpressionFactory</code></a> from the given <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>JPQLQueryBNF</code></a> by following the
path of fallback <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>JPQLQueryBNFs</code></a> and then returns the <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionFactory.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>ExpressionFactory</code></a>
from the leaf <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>JPQLQueryBNF</code></a>.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser">JPQLQueryBNF</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#findQueryBNF-org.eclipse.persistence.jpa.jpql.parser.Expression-">findQueryBNF</a></span>(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a>&nbsp;expression)</code>
<div class="block">Retrieves the <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>JPQLQueryBNF</code></a> that represents the fragment of this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a>
that was used when parsing the given <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a>.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionFactory.html" title="class in org.eclipse.persistence.jpa.jpql.parser">ExpressionFactory</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#getExpressionFactory-java.lang.String-">getExpressionFactory</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;expressionFactoryId)</code>
<div class="block">Retrieves the registered <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionFactory.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>ExpressionFactory</code></a> that was registered for the given unique
identifier.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>protected <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionRegistry.html" title="class in org.eclipse.persistence.jpa.jpql.parser">ExpressionRegistry</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#getExpressionRegistry--">getExpressionRegistry</a></span>()</code>
<div class="block">Returns the registry containing the <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>JPQLQueryBNFs</code></a> and the <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionFactory.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>ExpressionFactories</code></a> that are used
to properly parse a JPQL query.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLGrammar.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">JPQLGrammar</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#getGrammar--">getGrammar</a></span>()</code>
<div class="block">Returns the <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLGrammar.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>JPQLGrammar</code></a> that defines how the JPQL query was parsed.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/JPAVersion.html" title="enum in org.eclipse.persistence.jpa.jpql">JPAVersion</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#getIdentifierVersion-java.lang.String-">getIdentifierVersion</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;identifier)</code>
<div class="block">Retrieves the JPA version in which the identifier was first introduced.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../../../org/eclipse/persistence/jpa/jpql/JPAVersion.html" title="enum in org.eclipse.persistence.jpa.jpql">JPAVersion</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#getJPAVersion--">getJPAVersion</a></span>()</code>
<div class="block">Returns the version of the Java Persistence to support.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#getLength--">getLength</a></span>()</code>
<div class="block">Returns the length of the string representation of this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a>, which is the
length of the text generated by <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#toActualText--"><code>Expression.toActualText()</code></a>.</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#getOffset--">getOffset</a></span>()</code>
<div class="block">Returns the position of this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> within its parent hierarchy.</div>
</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractExpression</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#getParent--">getParent</a></span>()</code>
<div class="block">Returns the parent of this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a>.</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser">JPQLQueryBNF</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#getQueryBNF-java.lang.String-">getQueryBNF</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queryBNFID)</code>
<div class="block">Retrieves the BNF object that was registered for the given unique identifier.</div>
</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">JPQLExpression</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#getRoot--">getRoot</a></span>()</code>
<div class="block">Retrieves the root node of the parsed tree hierarchy.</div>
</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#getText--">getText</a></span>()</code>
<div class="block">Returns the encapsulated text of this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>AbstractExpression</code></a>, which can be used in various
ways, it can be a keyword, a literal, etc.</div>
</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#handleAggregate-org.eclipse.persistence.jpa.jpql.parser.JPQLQueryBNF-">handleAggregate</a></span>(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser">JPQLQueryBNF</a>&nbsp;queryBNF)</code>
<div class="block">Determines whether the given <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>JPQLQueryBNF</code></a> handles aggregate expressions.</div>
</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#handleCollection-org.eclipse.persistence.jpa.jpql.parser.JPQLQueryBNF-">handleCollection</a></span>(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser">JPQLQueryBNF</a>&nbsp;queryBNF)</code>
<div class="block">Determines whether the given <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>JPQLQueryBNF</code></a> handles a collection of sub-expressions that
are separated by commas.</div>
</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#isAncestor-org.eclipse.persistence.jpa.jpql.parser.Expression-">isAncestor</a></span>(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a>&nbsp;expression)</code>
<div class="block">Determines whether this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> is a parent of the given <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a>.</div>
</td>
</tr>
<tr id="i27" class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#isIdentifier-java.lang.String-">isIdentifier</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;word)</code>
<div class="block">Determines if the given word is a JPQL identifier.</div>
</td>
</tr>
<tr id="i28" class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#isNull--">isNull</a></span>()</code>
<div class="block">Determines whether this expression is a <code>null</code> <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> or any other subclass.</div>
</td>
</tr>
<tr id="i29" class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#isParsingComplete-org.eclipse.persistence.jpa.jpql.WordParser-java.lang.String-org.eclipse.persistence.jpa.jpql.parser.Expression-">isParsingComplete</a></span>(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/WordParser.html" title="class in org.eclipse.persistence.jpa.jpql">WordParser</a>&nbsp;wordParser,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;word,
<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a>&nbsp;expression)</code>
<div class="block">Determines whether the parsing is complete based on what is left in the given text.</div>
</td>
</tr>
<tr id="i30" class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#isTolerant--">isTolerant</a></span>()</code>
<div class="block">Determines if the parser is in tolerant mode or is in fast mode.</div>
</td>
</tr>
<tr id="i31" class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#isUnknown--">isUnknown</a></span>()</code>
<div class="block">Determines whether this expression is an unknown <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> or any other subclass.</div>
</td>
</tr>
<tr id="i32" class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#isVirtual--">isVirtual</a></span>()</code>
<div class="block">Determines whether this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>AbstractExpression</code></a> is virtual, meaning it's not part of the
query but is required for proper navigability.</div>
</td>
</tr>
<tr id="i33" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/utility/iterable/ListIterable.html" title="interface in org.eclipse.persistence.jpa.jpql.utility.iterable">ListIterable</a>&lt;<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#orderedChildren--">orderedChildren</a></span>()</code>
<div class="block">Returns the list representing this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> and its children.</div>
</td>
</tr>
<tr id="i34" class="altColor">
<td class="colFirst"><code>protected abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#parse-org.eclipse.persistence.jpa.jpql.WordParser-boolean-">parse</a></span>(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/WordParser.html" title="class in org.eclipse.persistence.jpa.jpql">WordParser</a>&nbsp;wordParser,
boolean&nbsp;tolerant)</code>
<div class="block">Parses the query by starting at the current position, which is part of the given <a href="../../../../../../org/eclipse/persistence/jpa/jpql/WordParser.html" title="class in org.eclipse.persistence.jpa.jpql"><code>WordParser</code></a>.</div>
</td>
</tr>
<tr id="i35" class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractExpression</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#parse-org.eclipse.persistence.jpa.jpql.WordParser-java.lang.String-boolean-">parse</a></span>(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/WordParser.html" title="class in org.eclipse.persistence.jpa.jpql">WordParser</a>&nbsp;wordParser,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queryBNFId,
boolean&nbsp;tolerant)</code>
<div class="block">Parses the given text by using the specified BNF.</div>
</td>
</tr>
<tr id="i36" class="altColor">
<td class="colFirst"><code>protected <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractExpression</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#parseUsingExpressionFactory-org.eclipse.persistence.jpa.jpql.WordParser-java.lang.String-boolean-">parseUsingExpressionFactory</a></span>(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/WordParser.html" title="class in org.eclipse.persistence.jpa.jpql">WordParser</a>&nbsp;wordParser,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queryBNFId,
boolean&nbsp;tolerant)</code>
<div class="block">Right away parses the text by retrieving the <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionFactory.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>ExpressionFactory</code></a> for the first word that
is extracted from <a href="../../../../../../org/eclipse/persistence/jpa/jpql/WordParser.html" title="class in org.eclipse.persistence.jpa.jpql"><code>WordParser</code></a> at the current location.</div>
</td>
</tr>
<tr id="i37" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#populatePosition-org.eclipse.persistence.jpa.jpql.parser.QueryPosition-int-">populatePosition</a></span>(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/QueryPosition.html" title="class in org.eclipse.persistence.jpa.jpql.parser">QueryPosition</a>&nbsp;queryPosition,
int&nbsp;position)</code>
<div class="block">Retrieves the <code>Expression</code> located at the given position using the actual query,
which may have extra whitespace.</div>
</td>
</tr>
<tr id="i38" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#rebuildActualText--">rebuildActualText</a></span>()</code>
<div class="block">Rebuilds the actual parsed text if it has been cached.</div>
</td>
</tr>
<tr id="i39" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#rebuildParsedText--">rebuildParsedText</a></span>()</code>
<div class="block">Rebuilds the parsed parsed text if it has been cached.</div>
</td>
</tr>
<tr id="i40" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#setParent-org.eclipse.persistence.jpa.jpql.parser.AbstractExpression-">setParent</a></span>(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractExpression</a>&nbsp;parent)</code>
<div class="block">Re-parents this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> to be a child of the given <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a>.</div>
</td>
</tr>
<tr id="i41" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#setText-java.lang.String-">setText</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;text)</code>
<div class="block">Sets the text of this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a>.</div>
</td>
</tr>
<tr id="i42" class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#shouldParseWithFactoryFirst--">shouldParseWithFactoryFirst</a></span>()</code>
<div class="block">Determines whether the parsing of the query should be performed using the <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionFactory.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>factories</code></a> first or it should automatically fallback to the fallback factory.</div>
</td>
</tr>
<tr id="i43" class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#shouldSkipLiteral-org.eclipse.persistence.jpa.jpql.parser.AbstractExpression-">shouldSkipLiteral</a></span>(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractExpression</a>&nbsp;expression)</code>
<div class="block">When parsing an invalid or incomplete query, it is possible two literals would be parsed but
in some cases, a CollectionExpression should not be created and the parsing should actually
stop here.</div>
</td>
</tr>
<tr id="i44" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#toActualText--">toActualText</a></span>()</code>
<div class="block">Generates a string representation of this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a>, which needs to include any
characters that are considered virtual, i.e.</div>
</td>
</tr>
<tr id="i45" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#toParsedText--">toParsedText</a></span>()</code>
<div class="block">Returns a string representation of this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> and its children.</div>
</td>
</tr>
<tr id="i46" class="altColor">
<td class="colFirst"><code>protected abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#toParsedText-java.lang.StringBuilder-boolean-">toParsedText</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/StringBuilder.html?is-external=true" title="class or interface in java.lang">StringBuilder</a>&nbsp;writer,
boolean&nbsp;actual)</code>
<div class="block">Generates a string representation of this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a>, including its children,
if it has any.</div>
</td>
</tr>
<tr id="i47" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#toString--">toString</a></span>()</code></td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.eclipse.persistence.jpa.jpql.parser.Expression">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;org.eclipse.persistence.jpa.jpql.parser.<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a></h3>
<code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#accept-org.eclipse.persistence.jpa.jpql.parser.ExpressionVisitor-">accept</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#acceptChildren-org.eclipse.persistence.jpa.jpql.parser.ExpressionVisitor-">acceptChildren</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#getQueryBNF--">getQueryBNF</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.detail">
<!-- -->
</a>
<h3>Field Detail</h3>
<a name="COMMA">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>COMMA</h4>
<pre>public static final&nbsp;char COMMA</pre>
<div class="block">The constant for ','.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../constant-values.html#org.eclipse.persistence.jpa.jpql.parser.AbstractExpression.COMMA">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="DOT">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DOT</h4>
<pre>public static final&nbsp;char DOT</pre>
<div class="block">The constant for '.'.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../constant-values.html#org.eclipse.persistence.jpa.jpql.parser.AbstractExpression.DOT">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="DOUBLE_QUOTE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DOUBLE_QUOTE</h4>
<pre>public static final&nbsp;char DOUBLE_QUOTE</pre>
<div class="block">The constant for '"'.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../constant-values.html#org.eclipse.persistence.jpa.jpql.parser.AbstractExpression.DOUBLE_QUOTE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="LEFT_CURLY_BRACKET">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>LEFT_CURLY_BRACKET</h4>
<pre>public static final&nbsp;char LEFT_CURLY_BRACKET</pre>
<div class="block">The constant for '{'.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../constant-values.html#org.eclipse.persistence.jpa.jpql.parser.AbstractExpression.LEFT_CURLY_BRACKET">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="LEFT_PARENTHESIS">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>LEFT_PARENTHESIS</h4>
<pre>public static final&nbsp;char LEFT_PARENTHESIS</pre>
<div class="block">The constant for '('.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../constant-values.html#org.eclipse.persistence.jpa.jpql.parser.AbstractExpression.LEFT_PARENTHESIS">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="NOT_DEFINED">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>NOT_DEFINED</h4>
<pre>public static final&nbsp;char NOT_DEFINED</pre>
<div class="block">The constant for a character that is not defined.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../constant-values.html#org.eclipse.persistence.jpa.jpql.parser.AbstractExpression.NOT_DEFINED">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="RIGHT_CURLY_BRACKET">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>RIGHT_CURLY_BRACKET</h4>
<pre>public static final&nbsp;char RIGHT_CURLY_BRACKET</pre>
<div class="block">The constant for '}'.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../constant-values.html#org.eclipse.persistence.jpa.jpql.parser.AbstractExpression.RIGHT_CURLY_BRACKET">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="RIGHT_PARENTHESIS">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>RIGHT_PARENTHESIS</h4>
<pre>public static final&nbsp;char RIGHT_PARENTHESIS</pre>
<div class="block">The constant for ')'.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../constant-values.html#org.eclipse.persistence.jpa.jpql.parser.AbstractExpression.RIGHT_PARENTHESIS">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="SINGLE_QUOTE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>SINGLE_QUOTE</h4>
<pre>public static final&nbsp;char SINGLE_QUOTE</pre>
<div class="block">The constant for '''.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../constant-values.html#org.eclipse.persistence.jpa.jpql.parser.AbstractExpression.SINGLE_QUOTE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="SPACE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>SPACE</h4>
<pre>public static final&nbsp;char SPACE</pre>
<div class="block">The constant for ' '.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../constant-values.html#org.eclipse.persistence.jpa.jpql.parser.AbstractExpression.SPACE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="UNDERSCORE">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>UNDERSCORE</h4>
<pre>public static final&nbsp;char UNDERSCORE</pre>
<div class="block">The constant for '_'.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../constant-values.html#org.eclipse.persistence.jpa.jpql.parser.AbstractExpression.UNDERSCORE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="AbstractExpression-org.eclipse.persistence.jpa.jpql.parser.AbstractExpression-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>AbstractExpression</h4>
<pre>protected&nbsp;AbstractExpression(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractExpression</a>&nbsp;parent)</pre>
<div class="block">Creates a new <code>AbstractExpression</code>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>parent</code> - The parent of this expression</dd>
</dl>
</li>
</ul>
<a name="AbstractExpression-org.eclipse.persistence.jpa.jpql.parser.AbstractExpression-java.lang.String-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>AbstractExpression</h4>
<pre>protected&nbsp;AbstractExpression(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractExpression</a>&nbsp;parent,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;text)</pre>
<div class="block">Creates a new <code>AbstractExpression</code>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>parent</code> - The parent of this expression</dd>
<dd><code>text</code> - The text to be stored in this expression, <code>null</code> cannot be passed</dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="acceptUnknownVisitor-org.eclipse.persistence.jpa.jpql.parser.ExpressionVisitor-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>acceptUnknownVisitor</h4>
<pre>protected&nbsp;boolean&nbsp;acceptUnknownVisitor(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionVisitor.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">ExpressionVisitor</a>&nbsp;visitor)</pre>
<div class="block">The given <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionVisitor.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>ExpressionVisitor</code></a> needs to visit this class but it is defined by a third-
party provider. This method will programmatically invoke the <b>visit</b> method defined on
the visitor. The method signature should be:
<div><code>{public|protected|private} void visit(ThirdPartyExpression expression)</code></div>
<p>
or
<div><code>{public|protected|private} void visit(Expression expression)</code></div>
<p>
<b>Note:</b> The package protected visibility (default) should be used with care, if the code
is running inside OSGi, then the method will not be accessible, even through reflection.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>visitor</code> - The <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionVisitor.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>ExpressionVisitor</code></a> to visit this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> programmatically</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>true</code> if the call was successfully executed; <code>false</code> otherwise</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.4</dd>
</dl>
</li>
</ul>
<a name="acceptUnknownVisitor-org.eclipse.persistence.jpa.jpql.parser.ExpressionVisitor-java.lang.Class-java.lang.Class-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>acceptUnknownVisitor</h4>
<pre>protected&nbsp;void&nbsp;acceptUnknownVisitor(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionVisitor.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">ExpressionVisitor</a>&nbsp;visitor,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;&nbsp;type,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;&nbsp;parameterType)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/NoSuchMethodException.html?is-external=true" title="class or interface in java.lang">NoSuchMethodException</a>,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/IllegalAccessException.html?is-external=true" title="class or interface in java.lang">IllegalAccessException</a>,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/InvocationTargetException.html?is-external=true" title="class or interface in java.lang.reflect">InvocationTargetException</a></pre>
<div class="block">The given <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionVisitor.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>ExpressionVisitor</code></a> needs to visit this class but it is defined by a third-
party provider. This method will programmatically invoke the <b>visit</b> method defined on
the visitor. The method signature should be:
<div><code>{public|protected|private} void visit(ThirdPartyExpression expression)</code></div>
<p>
or
<div><code>{public|protected|private} void visit(Expression expression)</code></div>
<p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>visitor</code> - The <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionVisitor.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>ExpressionVisitor</code></a> to visit this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> programmatically</dd>
<dd><code>type</code> - The type found in the hierarchy of the given <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionVisitor.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>ExpressionVisitor</code></a> that will
be used to retrieve the visit method</dd>
<dd><code>parameterType</code> - The parameter type of the visit method</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/NoSuchMethodException.html?is-external=true" title="class or interface in java.lang">NoSuchMethodException</a></code></dd>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/IllegalAccessException.html?is-external=true" title="class or interface in java.lang">IllegalAccessException</a></code></dd>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/InvocationTargetException.html?is-external=true" title="class or interface in java.lang.reflect">InvocationTargetException</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#acceptUnknownVisitor-org.eclipse.persistence.jpa.jpql.parser.ExpressionVisitor-"><code>acceptUnknownVisitor(ExpressionVisitor)</code></a></dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.4</dd>
</dl>
</li>
</ul>
<a name="addChildrenTo-java.util.Collection-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addChildrenTo</h4>
<pre>protected&nbsp;void&nbsp;addChildrenTo(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a>&gt;&nbsp;children)</pre>
<div class="block">Adds the children of this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>AbstractExpression</code></a> to the given collection.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>children</code> - The collection used to store the children</dd>
</dl>
</li>
</ul>
<a name="addOrderedChildrenTo-java.util.List-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addOrderedChildrenTo</h4>
<pre>protected&nbsp;void&nbsp;addOrderedChildrenTo(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a>&gt;&nbsp;children)</pre>
<div class="block">Adds the children of this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>AbstractExpression</code></a> to the given list.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>children</code> - The list used to store the string representation of this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>AbstractExpression</code></a></dd>
</dl>
</li>
</ul>
<a name="buildExpressionFromFallingBack-org.eclipse.persistence.jpa.jpql.WordParser-java.lang.String-org.eclipse.persistence.jpa.jpql.parser.JPQLQueryBNF-org.eclipse.persistence.jpa.jpql.parser.AbstractExpression-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>buildExpressionFromFallingBack</h4>
<pre>protected final&nbsp;<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractExpression</a>&nbsp;buildExpressionFromFallingBack(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/WordParser.html" title="class in org.eclipse.persistence.jpa.jpql">WordParser</a>&nbsp;wordParser,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;word,
<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser">JPQLQueryBNF</a>&nbsp;queryBNF,
<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractExpression</a>&nbsp;expression,
boolean&nbsp;tolerant)</pre>
<div class="block">No factories were found to create an <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> with the content of <a href="../../../../../../org/eclipse/persistence/jpa/jpql/WordParser.html" title="class in org.eclipse.persistence.jpa.jpql"><code>WordParser</code></a>,
this method will retrieve the fallback <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionFactory.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>ExpressionFactory</code></a> defined in the given <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>BNF</code></a>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>wordParser</code> - The text to parse based on the current position of the cursor</dd>
<dd><code>word</code> - The word that was retrieved from the given text, which is the first word in the text</dd>
<dd><code>queryBNF</code> - The <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>JPQLQueryBNF</code></a> used to determine how to parse from the current
position of the cursor within the JPQL query</dd>
<dd><code>expression</code> - The <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> that has just been parsed or <code>null</code></dd>
<dd><code>tolerant</code> - Determines whether the parsing system should be tolerant, meaning if it should
try to parse invalid or incomplete queries</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> representing the given sub-query</dd>
</dl>
</li>
</ul>
<a name="buildNullExpression--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>buildNullExpression</h4>
<pre>protected final&nbsp;<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractExpression</a>&nbsp;buildNullExpression()</pre>
<div class="block">Creates a new <code>null</code>-<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> parented with this one.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A new <code>null</code> version of an <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a></dd>
</dl>
</li>
</ul>
<a name="buildStringExpression-char-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>buildStringExpression</h4>
<pre>protected final&nbsp;<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a>&nbsp;buildStringExpression(char&nbsp;value)</pre>
<div class="block">Creates a new <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> wrapping the given character value.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>value</code> - The character to wrap as a <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> representation of the given identifier where the owning
<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> is this one</dd>
</dl>
</li>
</ul>
<a name="buildStringExpression-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>buildStringExpression</h4>
<pre>protected final&nbsp;<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a>&nbsp;buildStringExpression(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;value)</pre>
<div class="block">Creates a new <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> wrapping the given string value.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>value</code> - The string to wrap as a <code>Expression</code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> representation of the given identifier where the owning
<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> is this one</dd>
</dl>
</li>
</ul>
<a name="buildUnknownExpression-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>buildUnknownExpression</h4>
<pre>protected final&nbsp;<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractExpression</a>&nbsp;buildUnknownExpression(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;text)</pre>
<div class="block">Creates an <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> that contains a malformed expression.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>text</code> - The text causing the expression to be malformed</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A new <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> where <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#toActualText--"><code>toActualText()</code></a> returns the given text</dd>
</dl>
</li>
</ul>
<a name="calculatePosition-org.eclipse.persistence.jpa.jpql.parser.Expression-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>calculatePosition</h4>
<pre>protected final&nbsp;int&nbsp;calculatePosition(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a>&nbsp;expression,
int&nbsp;length)</pre>
<div class="block">Calculates the position of the given <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> by calculating the length of what is before.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>expression</code> - The <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> for which its position within the parsed tree needs
to be determined</dd>
<dd><code>length</code> - The current cursor position within the JPQL query while digging into the tree
until the search reaches the expression</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The length of the string representation for what is coming before the given <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a></dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.4</dd>
</dl>
</li>
</ul>
<a name="children--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>children</h4>
<pre>public final&nbsp;<a href="../../../../../../org/eclipse/persistence/jpa/jpql/utility/iterable/ListIterable.html" title="interface in org.eclipse.persistence.jpa.jpql.utility.iterable">ListIterable</a>&lt;<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a>&gt;&nbsp;children()</pre>
<div class="block">Returns the children of this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#children--">children</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The children of this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> or an empty <a href="../../../../../../org/eclipse/persistence/jpa/jpql/utility/iterable/ListIterable.html" title="interface in org.eclipse.persistence.jpa.jpql.utility.iterable"><code>ListIterable</code></a></dd>
</dl>
</li>
</ul>
<a name="findFallBackExpressionFactory-org.eclipse.persistence.jpa.jpql.parser.JPQLQueryBNF-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>findFallBackExpressionFactory</h4>
<pre>protected final&nbsp;<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionFactory.html" title="class in org.eclipse.persistence.jpa.jpql.parser">ExpressionFactory</a>&nbsp;findFallBackExpressionFactory(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser">JPQLQueryBNF</a>&nbsp;queryBNF)</pre>
<div class="block">Retrieve the <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionFactory.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>ExpressionFactory</code></a> from the given <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>JPQLQueryBNF</code></a> by following the
path of fallback <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>JPQLQueryBNFs</code></a> and then returns the <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionFactory.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>ExpressionFactory</code></a>
from the leaf <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>JPQLQueryBNF</code></a>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>queryBNF</code> - The <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>JPQLQueryBNF</code></a> for which its associated fallback <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionFactory.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>ExpressionFactory</code></a>
will be searched</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Either the fallback <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionFactory.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>ExpressionFactory</code></a> linked to the given <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>JPQLQueryBNF</code></a>
or <code>null</code> if none was declared</dd>
</dl>
</li>
</ul>
<a name="findQueryBNF-org.eclipse.persistence.jpa.jpql.parser.Expression-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>findQueryBNF</h4>
<pre>public&nbsp;<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser">JPQLQueryBNF</a>&nbsp;findQueryBNF(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a>&nbsp;expression)</pre>
<div class="block">Retrieves the <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>JPQLQueryBNF</code></a> that represents the fragment of this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a>
that was used when parsing the given <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#findQueryBNF-org.eclipse.persistence.jpa.jpql.parser.Expression-">findQueryBNF</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>expression</code> - The <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> that is a descendant of this one</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>JPQLQueryBNF</code></a> that was used to parse the given expression</dd>
</dl>
</li>
</ul>
<a name="getExpressionFactory-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getExpressionFactory</h4>
<pre>protected final&nbsp;<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionFactory.html" title="class in org.eclipse.persistence.jpa.jpql.parser">ExpressionFactory</a>&nbsp;getExpressionFactory(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;expressionFactoryId)</pre>
<div class="block">Retrieves the registered <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionFactory.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>ExpressionFactory</code></a> that was registered for the given unique
identifier.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>expressionFactoryId</code> - The unique identifier of the <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionFactory.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>ExpressionFactory</code></a> to retrieve</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionFactory.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>ExpressionFactory</code></a> mapped with the given unique identifier</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionRegistry.html#getExpressionFactory-java.lang.String-"><code>ExpressionRegistry.getExpressionFactory(String)</code></a></dd>
</dl>
</li>
</ul>
<a name="getExpressionRegistry--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getExpressionRegistry</h4>
<pre>protected final&nbsp;<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionRegistry.html" title="class in org.eclipse.persistence.jpa.jpql.parser">ExpressionRegistry</a>&nbsp;getExpressionRegistry()</pre>
<div class="block">Returns the registry containing the <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>JPQLQueryBNFs</code></a> and the <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionFactory.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>ExpressionFactories</code></a> that are used
to properly parse a JPQL query.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The registry containing the information related to the JPQL grammar</dd>
</dl>
</li>
</ul>
<a name="getGrammar--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getGrammar</h4>
<pre>public&nbsp;<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLGrammar.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">JPQLGrammar</a>&nbsp;getGrammar()</pre>
<div class="block">Returns the <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLGrammar.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>JPQLGrammar</code></a> that defines how the JPQL query was parsed.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#getGrammar--">getGrammar</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLGrammar.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>JPQLGrammar</code></a> that was used to parse this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a></dd>
</dl>
</li>
</ul>
<a name="getIdentifierVersion-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getIdentifierVersion</h4>
<pre>public&nbsp;<a href="../../../../../../org/eclipse/persistence/jpa/jpql/JPAVersion.html" title="enum in org.eclipse.persistence.jpa.jpql">JPAVersion</a>&nbsp;getIdentifierVersion(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;identifier)</pre>
<div class="block">Retrieves the JPA version in which the identifier was first introduced.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The version in which the identifier was introduced</dd>
</dl>
</li>
</ul>
<a name="getJPAVersion--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getJPAVersion</h4>
<pre>protected&nbsp;<a href="../../../../../../org/eclipse/persistence/jpa/jpql/JPAVersion.html" title="enum in org.eclipse.persistence.jpa.jpql">JPAVersion</a>&nbsp;getJPAVersion()</pre>
<div class="block">Returns the version of the Java Persistence to support.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The JPA version supported by the grammar</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLGrammar.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>JPQLGrammar</code></a></dd>
</dl>
</li>
</ul>
<a name="getLength--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLength</h4>
<pre>public final&nbsp;int&nbsp;getLength()</pre>
<div class="block">Returns the length of the string representation of this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a>, which is the
length of the text generated by <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#toActualText--"><code>Expression.toActualText()</code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#getLength--">getLength</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The length of the string representation of this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a></dd>
</dl>
</li>
</ul>
<a name="getOffset--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getOffset</h4>
<pre>public final&nbsp;int&nbsp;getOffset()</pre>
<div class="block">Returns the position of this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> within its parent hierarchy.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#getOffset--">getOffset</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The length of the string representation of what is coming before this object</dd>
</dl>
</li>
</ul>
<a name="getParent--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getParent</h4>
<pre>public final&nbsp;<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractExpression</a>&nbsp;getParent()</pre>
<div class="block">Returns the parent of this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#getParent--">getParent</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The parent of this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a>, which is never <code>null</code> except for the
root of the tree</dd>
</dl>
</li>
</ul>
<a name="getQueryBNF-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getQueryBNF</h4>
<pre>public&nbsp;<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser">JPQLQueryBNF</a>&nbsp;getQueryBNF(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queryBNFID)</pre>
<div class="block">Retrieves the BNF object that was registered for the given unique identifier.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>queryBNFID</code> - The unique identifier of the <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>JPQLQueryBNF</code></a> to retrieve</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>JPQLQueryBNF</code></a> representing a section of the grammar</dd>
</dl>
</li>
</ul>
<a name="getRoot--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRoot</h4>
<pre>public final&nbsp;<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">JPQLExpression</a>&nbsp;getRoot()</pre>
<div class="block">Retrieves the root node of the parsed tree hierarchy.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#getRoot--">getRoot</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The root of the <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> tree</dd>
</dl>
</li>
</ul>
<a name="getText--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getText</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getText()</pre>
<div class="block">Returns the encapsulated text of this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>AbstractExpression</code></a>, which can be used in various
ways, it can be a keyword, a literal, etc.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Either the JPQL identifier for this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>AbstractExpression</code></a>, the literal it
encapsulates or an empty string</dd>
</dl>
</li>
</ul>
<a name="handleAggregate-org.eclipse.persistence.jpa.jpql.parser.JPQLQueryBNF-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>handleAggregate</h4>
<pre>protected&nbsp;boolean&nbsp;handleAggregate(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser">JPQLQueryBNF</a>&nbsp;queryBNF)</pre>
<div class="block">Determines whether the given <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>JPQLQueryBNF</code></a> handles aggregate expressions.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>queryBNF</code> - The <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>JPQLQueryBNF</code></a> used to determine if the parsing should handle
aggregate expressions</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>true</code> if the given BNF handles aggregate expressions; <code>false</code>
otherwise</dd>
</dl>
</li>
</ul>
<a name="handleCollection-org.eclipse.persistence.jpa.jpql.parser.JPQLQueryBNF-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>handleCollection</h4>
<pre>protected&nbsp;boolean&nbsp;handleCollection(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser">JPQLQueryBNF</a>&nbsp;queryBNF)</pre>
<div class="block">Determines whether the given <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>JPQLQueryBNF</code></a> handles a collection of sub-expressions that
are separated by commas.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>queryBNF</code> - The <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>JPQLQueryBNF</code></a> used to determine if the parsing should handle
collection of sub-expressions</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>true</code> if the sub-expression to parse might have several sub-expressions
separated by commas; <code>false</code> otherwise</dd>
</dl>
</li>
</ul>
<a name="isAncestor-org.eclipse.persistence.jpa.jpql.parser.Expression-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isAncestor</h4>
<pre>public&nbsp;boolean&nbsp;isAncestor(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a>&nbsp;expression)</pre>
<div class="block">Determines whether this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> is a parent of the given <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#isAncestor-org.eclipse.persistence.jpa.jpql.parser.Expression-">isAncestor</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>expression</code> - The <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> to verify its paternity with this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>true</code> if this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> is the same as the given <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a>
or one of its parent; <code>false</code> otherwise</dd>
</dl>
</li>
</ul>
<a name="isIdentifier-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isIdentifier</h4>
<pre>protected final&nbsp;boolean&nbsp;isIdentifier(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;word)</pre>
<div class="block">Determines if the given word is a JPQL identifier. The check is case insensitive.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>word</code> - The word to test if it is a JPQL identifier</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>true</code> if the word is an identifier, <code>false</code> otherwise</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionRegistry.html#isIdentifier-java.lang.String-"><code>ExpressionRegistry.isIdentifier(String)</code></a></dd>
</dl>
</li>
</ul>
<a name="isNull--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isNull</h4>
<pre>protected&nbsp;boolean&nbsp;isNull()</pre>
<div class="block">Determines whether this expression is a <code>null</code> <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> or any other subclass.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>false</code> by default</dd>
</dl>
</li>
</ul>
<a name="isParsingComplete-org.eclipse.persistence.jpa.jpql.WordParser-java.lang.String-org.eclipse.persistence.jpa.jpql.parser.Expression-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isParsingComplete</h4>
<pre>protected&nbsp;boolean&nbsp;isParsingComplete(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/WordParser.html" title="class in org.eclipse.persistence.jpa.jpql">WordParser</a>&nbsp;wordParser,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;word,
<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a>&nbsp;expression)</pre>
<div class="block">Determines whether the parsing is complete based on what is left in the given text. The text
is never empty.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>wordParser</code> - The text to parse based on the current position of the cursor</dd>
<dd><code>word</code> - The word that was retrieved from the given text, which is the first word in the text</dd>
<dd><code>expression</code> - The <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> that has already been parsed</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>true</code> if the text no longer can't be parsed by the current expression;
<code>false</code> if more can be parsed</dd>
</dl>
</li>
</ul>
<a name="isTolerant--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isTolerant</h4>
<pre>protected&nbsp;boolean&nbsp;isTolerant()</pre>
<div class="block">Determines if the parser is in tolerant mode or is in fast mode. When the tolerant is turned
on, it means the parser will attempt to parse incomplete or invalid queries.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>true</code> if the parsing system should parse invalid or incomplete queries;
<code>false</code> when the query is well-formed and valid</dd>
</dl>
</li>
</ul>
<a name="isUnknown--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isUnknown</h4>
<pre>protected&nbsp;boolean&nbsp;isUnknown()</pre>
<div class="block">Determines whether this expression is an unknown <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> or any other subclass.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>false</code> by default</dd>
</dl>
</li>
</ul>
<a name="isVirtual--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isVirtual</h4>
<pre>protected&nbsp;boolean&nbsp;isVirtual()</pre>
<div class="block">Determines whether this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>AbstractExpression</code></a> is virtual, meaning it's not part of the
query but is required for proper navigability.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>true</code> if this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>AbstractExpression</code></a> was virtually created to fully
qualify path expression; <code>false</code> if it was parsed</dd>
</dl>
</li>
</ul>
<a name="orderedChildren--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>orderedChildren</h4>
<pre>public final&nbsp;<a href="../../../../../../org/eclipse/persistence/jpa/jpql/utility/iterable/ListIterable.html" title="interface in org.eclipse.persistence.jpa.jpql.utility.iterable">ListIterable</a>&lt;<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a>&gt;&nbsp;orderedChildren()</pre>
<div class="block">Returns the list representing this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> and its children.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#orderedChildren--">orderedChildren</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expressions</code></a> representing this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a></dd>
</dl>
</li>
</ul>
<a name="parse-org.eclipse.persistence.jpa.jpql.WordParser-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>parse</h4>
<pre>protected abstract&nbsp;void&nbsp;parse(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/WordParser.html" title="class in org.eclipse.persistence.jpa.jpql">WordParser</a>&nbsp;wordParser,
boolean&nbsp;tolerant)</pre>
<div class="block">Parses the query by starting at the current position, which is part of the given <a href="../../../../../../org/eclipse/persistence/jpa/jpql/WordParser.html" title="class in org.eclipse.persistence.jpa.jpql"><code>WordParser</code></a>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>wordParser</code> - The text to parse based on the current position of the cursor</dd>
<dd><code>tolerant</code> - Determines whether the parsing system should be tolerant, meaning if it should
try to parse invalid or incomplete queries</dd>
</dl>
</li>
</ul>
<a name="parse-org.eclipse.persistence.jpa.jpql.WordParser-java.lang.String-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>parse</h4>
<pre>protected&nbsp;<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractExpression</a>&nbsp;parse(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/WordParser.html" title="class in org.eclipse.persistence.jpa.jpql">WordParser</a>&nbsp;wordParser,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queryBNFId,
boolean&nbsp;tolerant)</pre>
<div class="block">Parses the given text by using the specified BNF.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>wordParser</code> - The text to parse based on the current position of the cursor</dd>
<dd><code>queryBNFId</code> - The unique identifier of the <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>JPQLQueryBNF</code></a> that is used to determine
how to parse the text at the current cursor position within the JPQL query</dd>
<dd><code>tolerant</code> - Determines whether the parsing system should be tolerant, meaning if it should
try to parse invalid or incomplete queries</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> representing the given sub-query</dd>
</dl>
</li>
</ul>
<a name="parseUsingExpressionFactory-org.eclipse.persistence.jpa.jpql.WordParser-java.lang.String-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>parseUsingExpressionFactory</h4>
<pre>protected&nbsp;<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractExpression</a>&nbsp;parseUsingExpressionFactory(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/WordParser.html" title="class in org.eclipse.persistence.jpa.jpql">WordParser</a>&nbsp;wordParser,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;queryBNFId,
boolean&nbsp;tolerant)</pre>
<div class="block">Right away parses the text by retrieving the <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionFactory.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>ExpressionFactory</code></a> for the first word that
is extracted from <a href="../../../../../../org/eclipse/persistence/jpa/jpql/WordParser.html" title="class in org.eclipse.persistence.jpa.jpql"><code>WordParser</code></a> at the current location.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>wordParser</code> - The text to parse based on the current position of the cursor</dd>
<dd><code>queryBNFId</code> - The unique identifier of the <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLQueryBNF.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>JPQLQueryBNF</code></a> that is used to determine
how to parse the text at the current cursor position within the JPQL query</dd>
<dd><code>tolerant</code> - Determines whether the parsing system should be tolerant, meaning if it should
try to parse invalid or incomplete queries</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> representing the given sub-query</dd>
</dl>
</li>
</ul>
<a name="populatePosition-org.eclipse.persistence.jpa.jpql.parser.QueryPosition-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>populatePosition</h4>
<pre>public&nbsp;void&nbsp;populatePosition(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/QueryPosition.html" title="class in org.eclipse.persistence.jpa.jpql.parser">QueryPosition</a>&nbsp;queryPosition,
int&nbsp;position)</pre>
<div class="block">Retrieves the <code>Expression</code> located at the given position using the actual query,
which may have extra whitespace.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#populatePosition-org.eclipse.persistence.jpa.jpql.parser.QueryPosition-int-">populatePosition</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a></code></dd>
<dd><code>position</code> - The array has one element and is the position of the <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> to retrieve</dd>
</dl>
</li>
</ul>
<a name="rebuildActualText--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>rebuildActualText</h4>
<pre>protected final&nbsp;void&nbsp;rebuildActualText()</pre>
<div class="block">Rebuilds the actual parsed text if it has been cached.</div>
</li>
</ul>
<a name="rebuildParsedText--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>rebuildParsedText</h4>
<pre>protected final&nbsp;void&nbsp;rebuildParsedText()</pre>
<div class="block">Rebuilds the parsed parsed text if it has been cached.</div>
</li>
</ul>
<a name="setParent-org.eclipse.persistence.jpa.jpql.parser.AbstractExpression-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setParent</h4>
<pre>protected final&nbsp;void&nbsp;setParent(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractExpression</a>&nbsp;parent)</pre>
<div class="block">Re-parents this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> to be a child of the given <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>parent</code> - The new parent of this object</dd>
</dl>
</li>
</ul>
<a name="setText-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setText</h4>
<pre>protected final&nbsp;void&nbsp;setText(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;text)</pre>
<div class="block">Sets the text of this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>text</code> - The immutable text wrapped by this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a>, which cannot be <code>null</code></dd>
</dl>
</li>
</ul>
<a name="shouldParseWithFactoryFirst--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldParseWithFactoryFirst</h4>
<pre>protected&nbsp;boolean&nbsp;shouldParseWithFactoryFirst()</pre>
<div class="block">Determines whether the parsing of the query should be performed using the <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionFactory.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>factories</code></a> first or it should automatically fallback to the fallback factory.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>true</code> is returned by default so the factories are used before falling back</dd>
</dl>
</li>
</ul>
<a name="shouldSkipLiteral-org.eclipse.persistence.jpa.jpql.parser.AbstractExpression-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldSkipLiteral</h4>
<pre>protected&nbsp;boolean&nbsp;shouldSkipLiteral(<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractExpression</a>&nbsp;expression)</pre>
<div class="block">When parsing an invalid or incomplete query, it is possible two literals would be parsed but
in some cases, a CollectionExpression should not be created and the parsing should actually
stop here. Example: BETWEEN 10 20, when parsing 20, it should not be parsed as part of the
lower bound expression.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>expression</code> - The <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> that has just been parsed or <code>null</code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>true</code></dd>
</dl>
</li>
</ul>
<a name="toActualText--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toActualText</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;toActualText()</pre>
<div class="block">Generates a string representation of this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a>, which needs 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.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#toActualText--">toActualText</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The string representation of this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a></dd>
</dl>
</li>
</ul>
<a name="toParsedText--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toParsedText</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;toParsedText()</pre>
<div class="block">Returns a string representation of this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> and its children. The expression
should contain whitespace even if the beautified version would not have any. For instance,
"SELECT e " should be returned where <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#toParsedText--"><code>Expression.toParsedText()</code></a> would return "SELECT e".</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#toParsedText--">toParsedText</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The string representation of this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a></dd>
</dl>
</li>
</ul>
<a name="toParsedText-java.lang.StringBuilder-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toParsedText</h4>
<pre>protected abstract&nbsp;void&nbsp;toParsedText(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/StringBuilder.html?is-external=true" title="class or interface in java.lang">StringBuilder</a>&nbsp;writer,
boolean&nbsp;actual)</pre>
<div class="block">Generates a string representation of this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a>, including its children,
if it has any.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>writer</code> - The buffer used to append this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a>'s string representation</dd>
<dd><code>actual</code> - Determines whether the string representation should represent what was parsed,
i.e. include any "virtual" whitespace (such as ending whitespace) and the actual case of the
JPQL identifiers</dd>
</dl>
</li>
</ul>
<a name="toString--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>toString</h4>
<pre>public final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;toString()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage">EclipseLink 3.0.2, API Reference</div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractEncapsulatedExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpressionVisitor.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" target="_top">Frames</a></li>
<li><a href="AbstractExpression.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2007&#x2013;2021 <a href="http://www.eclipse.org/eclipselink">Eclipse.org - EclipseLink Project</a>. All rights reserved.</small></p>
</body>
</html>