blob: 0f59791efd523da51767099903e51aeef45c926d [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:45 UTC 2021 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JPQLExpression (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="JPQLExpression (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};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance 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/JoinFetchBNF.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/JPQLGrammar.html" title="interface 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/JPQLExpression.html" target="_top">Frames</a></li>
<li><a href="JPQLExpression.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="#fields.inherited.from.class.org.eclipse.persistence.jpa.jpql.parser.AbstractExpression">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>Field&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 JPQLExpression" class="title">Class JPQLExpression</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><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">org.eclipse.persistence.jpa.jpql.parser.AbstractExpression</a></li>
<li>
<ul class="inheritance">
<li>org.eclipse.persistence.jpa.jpql.parser.JPQLExpression</li>
</ul>
</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>
<hr>
<br>
<pre>public final class <span class="typeNameLabel">JPQLExpression</span>
extends <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractExpression</a></pre>
<div class="block">A <code>JPQLExpression</code> is the root of the parsed tree representation of a JPQL query. The
query is parsed based on what was registered in the <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLGrammar.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>JPQLGrammar</code></a>'s <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionRegistry.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>ExpressionRegistry</code></a>.
<p>
A JPQL statement may be either a <b>SELECT</b> statement, an <b>UPDATE</b> statement, or a
<b>DELETE FROM</b> statement.
<div><b>BNF:</b> <code>QL_statement ::= <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/SelectStatement.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>select_statement</code></a> |
<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/UpdateStatement.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>update_statement</code></a> |
<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/DeleteStatement.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>delete_statement</code></a></code></div>
<p>
It is possible to parse a portion of a JPQL query. The ID 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> is used to
parse that portion and <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLExpression.html#getQueryStatement--"><code>getQueryStatement()</code></a> then returns only the parsed tree representation
of that JPQL fragment.</div>
<dl>
<dt><span class="simpleTagLabel">Version:</span></dt>
<dd>2.5</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>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.org.eclipse.persistence.jpa.jpql.parser.AbstractExpression">
<!-- -->
</a>
<h3>Fields inherited from class&nbsp;org.eclipse.persistence.jpa.jpql.parser.<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractExpression</a></h3>
<code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#COMMA">COMMA</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#DOT">DOT</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#DOUBLE_QUOTE">DOUBLE_QUOTE</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#LEFT_CURLY_BRACKET">LEFT_CURLY_BRACKET</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#LEFT_PARENTHESIS">LEFT_PARENTHESIS</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#NOT_DEFINED">NOT_DEFINED</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#RIGHT_CURLY_BRACKET">RIGHT_CURLY_BRACKET</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#RIGHT_PARENTHESIS">RIGHT_PARENTHESIS</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#SINGLE_QUOTE">SINGLE_QUOTE</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#SPACE">SPACE</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#UNDERSCORE">UNDERSCORE</a></code></li>
</ul>
<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="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLExpression.html#JPQLExpression-java.lang.CharSequence-org.eclipse.persistence.jpa.jpql.parser.JPQLGrammar-">JPQLExpression</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang">CharSequence</a>&nbsp;query,
<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLGrammar.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">JPQLGrammar</a>&nbsp;jpqlGrammar)</code>
<div class="block">Creates a new <code>JPQLExpression</code>, which is the root of the JPQL parsed tree.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLExpression.html#JPQLExpression-java.lang.CharSequence-org.eclipse.persistence.jpa.jpql.parser.JPQLGrammar-boolean-">JPQLExpression</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang">CharSequence</a>&nbsp;query,
<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLGrammar.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">JPQLGrammar</a>&nbsp;jpqlGrammar,
boolean&nbsp;tolerant)</code>
<div class="block">Creates a new <code>JPQLExpression</code>, which is the root of the JPQL parsed tree.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLExpression.html#JPQLExpression-java.lang.CharSequence-org.eclipse.persistence.jpa.jpql.parser.JPQLGrammar-java.lang.String-boolean-">JPQLExpression</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang">CharSequence</a>&nbsp;jpqlFragment,
<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLGrammar.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">JPQLGrammar</a>&nbsp;jpqlGrammar,
<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">Creates a new <code>JPQLExpression</code> that will parse the given fragment of a JPQL query.</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="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>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLExpression.html#accept-org.eclipse.persistence.jpa.jpql.parser.ExpressionVisitor-">accept</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">Visits this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> by the given <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionVisitor.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>visitor</code></a>.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLExpression.html#acceptChildren-org.eclipse.persistence.jpa.jpql.parser.ExpressionVisitor-">acceptChildren</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">Visits 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="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/JPQLExpression.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/JPQLExpression.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><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/QueryPosition.html" title="class in org.eclipse.persistence.jpa.jpql.parser">QueryPosition</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLExpression.html#buildPosition-java.lang.String-int-">buildPosition</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;actualQuery,
int&nbsp;position)</code>
<div class="block">Creates a map of the position of the cursor within each <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> of the parsed tree.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><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/JPQLExpression.html#getExpression-java.lang.String-int-">getExpression</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;actualQuery,
int&nbsp;position)</code>
<div class="block">Returns the deepest <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> for the given position.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<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/JPQLExpression.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="i7" class="rowColor">
<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/JPQLExpression.html#getJPAVersion--">getJPAVersion</a></span>()</code>
<div class="block">Returns the version of the Java Persistence to support.</div>
</td>
</tr>
<tr id="i8" 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/JPQLExpression.html#getQueryBNF--">getQueryBNF</a></span>()</code>
<div class="block">Returns the BNF 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="i9" class="rowColor">
<td class="colFirst"><code><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/JPQLExpression.html#getQueryStatement--">getQueryStatement</a></span>()</code>
<div class="block">Returns 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 query, which is either a <b>SELECT</b>, a
<b>DELETE</b> or an <b>UPDATE</b> clause.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code><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/JPQLExpression.html#getUnknownEndingStatement--">getUnknownEndingStatement</a></span>()</code>
<div class="block">Returns 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 may contain a portion of the query that could not be
parsed, this happens when the query is either incomplete or malformed.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLExpression.html#hasQueryStatement--">hasQueryStatement</a></span>()</code>
<div class="block">Determines whether a query was parsed.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLExpression.html#hasUnknownEndingStatement--">hasUnknownEndingStatement</a></span>()</code>
<div class="block">Determines whether the query that got parsed had some malformed or unknown information.</div>
</td>
</tr>
<tr id="i13" 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/JPQLExpression.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="i14" 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/JPQLExpression.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="i15" 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/JPQLExpression.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>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.eclipse.persistence.jpa.jpql.parser.AbstractExpression">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;org.eclipse.persistence.jpa.jpql.parser.<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractExpression</a></h3>
<code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#acceptUnknownVisitor-org.eclipse.persistence.jpa.jpql.parser.ExpressionVisitor-">acceptUnknownVisitor</a>, <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>, <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>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#buildNullExpression--">buildNullExpression</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#buildStringExpression-char-">buildStringExpression</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#buildStringExpression-java.lang.String-">buildStringExpression</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#buildUnknownExpression-java.lang.String-">buildUnknownExpression</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#calculatePosition-org.eclipse.persistence.jpa.jpql.parser.Expression-int-">calculatePosition</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#children--">children</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#findFallBackExpressionFactory-org.eclipse.persistence.jpa.jpql.parser.JPQLQueryBNF-">findFallBackExpressionFactory</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#findQueryBNF-org.eclipse.persistence.jpa.jpql.parser.Expression-">findQueryBNF</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#getExpressionFactory-java.lang.String-">getExpressionFactory</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#getExpressionRegistry--">getExpressionRegistry</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#getIdentifierVersion-java.lang.String-">getIdentifierVersion</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#getLength--">getLength</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#getOffset--">getOffset</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#getParent--">getParent</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#getQueryBNF-java.lang.String-">getQueryBNF</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#getRoot--">getRoot</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#getText--">getText</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#handleAggregate-org.eclipse.persistence.jpa.jpql.parser.JPQLQueryBNF-">handleAggregate</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#handleCollection-org.eclipse.persistence.jpa.jpql.parser.JPQLQueryBNF-">handleCollection</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#isAncestor-org.eclipse.persistence.jpa.jpql.parser.Expression-">isAncestor</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#isIdentifier-java.lang.String-">isIdentifier</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#isNull--">isNull</a>, <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>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#isUnknown--">isUnknown</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#isVirtual--">isVirtual</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#orderedChildren--">orderedChildren</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#parse-org.eclipse.persistence.jpa.jpql.WordParser-java.lang.String-boolean-">parse</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#parseUsingExpressionFactory-org.eclipse.persistence.jpa.jpql.WordParser-java.lang.String-boolean-">parseUsingExpressionFactory</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#populatePosition-org.eclipse.persistence.jpa.jpql.parser.QueryPosition-int-">populatePosition</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#rebuildActualText--">rebuildActualText</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#rebuildParsedText--">rebuildParsedText</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#setParent-org.eclipse.persistence.jpa.jpql.parser.AbstractExpression-">setParent</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#setText-java.lang.String-">setText</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#shouldParseWithFactoryFirst--">shouldParseWithFactoryFirst</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#shouldSkipLiteral-org.eclipse.persistence.jpa.jpql.parser.AbstractExpression-">shouldSkipLiteral</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#toActualText--">toActualText</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#toParsedText--">toParsedText</a>, <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#toString--">toString</a></code></li>
</ul>
<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>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="JPQLExpression-java.lang.CharSequence-org.eclipse.persistence.jpa.jpql.parser.JPQLGrammar-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>JPQLExpression</h4>
<pre>public&nbsp;JPQLExpression(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang">CharSequence</a>&nbsp;query,
<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLGrammar.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">JPQLGrammar</a>&nbsp;jpqlGrammar)</pre>
<div class="block">Creates a new <code>JPQLExpression</code>, which is the root of the JPQL parsed tree.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>query</code> - The string representation of the JPQL query to parse</dd>
<dd><code>jpqlGrammar</code> - The JPQL grammar that defines how to parse a JPQL query</dd>
</dl>
</li>
</ul>
<a name="JPQLExpression-java.lang.CharSequence-org.eclipse.persistence.jpa.jpql.parser.JPQLGrammar-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>JPQLExpression</h4>
<pre>public&nbsp;JPQLExpression(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang">CharSequence</a>&nbsp;query,
<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLGrammar.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">JPQLGrammar</a>&nbsp;jpqlGrammar,
boolean&nbsp;tolerant)</pre>
<div class="block">Creates a new <code>JPQLExpression</code>, which is the root of the JPQL parsed tree.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>query</code> - The string representation of the JPQL query to parse</dd>
<dd><code>jpqlGrammar</code> - The JPQL grammar that defines how to parse a JPQL query</dd>
<dd><code>tolerant</code> - Determines if the parsing system should be tolerant, meaning if it should try
to parse invalid or incomplete queries</dd>
</dl>
</li>
</ul>
<a name="JPQLExpression-java.lang.CharSequence-org.eclipse.persistence.jpa.jpql.parser.JPQLGrammar-java.lang.String-boolean-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>JPQLExpression</h4>
<pre>public&nbsp;JPQLExpression(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang">CharSequence</a>&nbsp;jpqlFragment,
<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLGrammar.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">JPQLGrammar</a>&nbsp;jpqlGrammar,
<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">Creates a new <code>JPQLExpression</code> that will parse the given fragment of a JPQL query.
This means <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLExpression.html#getQueryStatement--"><code>getQueryStatement()</code></a> will not return a query statement (select, delete or
update) but only the parsed tree representation of the fragment if the query BNF can pare it.
If the fragment of the JPQL query could not be parsed using 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>,
then <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/JPQLExpression.html#getUnknownEndingStatement--"><code>getUnknownEndingStatement()</code></a> will contain the non-parsable fragment.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>jpqlFragment</code> - A fragment of a JPQL query, which is a portion of a complete JPQL query</dd>
<dd><code>jpqlGrammar</code> - The JPQL grammar that defines how to parse a JPQL query</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></dd>
<dd><code>tolerant</code> - Determines if the parsing system should be tolerant, meaning if it should try
to parse invalid or incomplete queries</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.4</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="accept-org.eclipse.persistence.jpa.jpql.parser.ExpressionVisitor-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>accept</h4>
<pre>public&nbsp;void&nbsp;accept(<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">Visits this <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> by the given <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/ExpressionVisitor.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>visitor</code></a>.</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 object</dd>
</dl>
</li>
</ul>
<a name="acceptChildren-org.eclipse.persistence.jpa.jpql.parser.ExpressionVisitor-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>acceptChildren</h4>
<pre>public&nbsp;void&nbsp;acceptChildren(<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">Visits 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>. This method can be used to optimize traversing
the children since a new list is not created every time <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html#children--"><code>Expression.children()</code></a> is called.
<p>
This does not traverse the <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> sub-hierarchy, use a subclass of
<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractTraverseChildrenVisitor.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>AbstractTraverseChildrenVisitor</code></a> in order to traverse the entire sub-hierarchy.</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>visitor</code></a> to visit the children of this object.</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="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#addChildrenTo-java.util.Collection-">addChildrenTo</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractExpression</a></code></dd>
<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="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#addOrderedChildrenTo-java.util.List-">addOrderedChildrenTo</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractExpression</a></code></dd>
<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="buildPosition-java.lang.String-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>buildPosition</h4>
<pre>public&nbsp;<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/QueryPosition.html" title="class in org.eclipse.persistence.jpa.jpql.parser">QueryPosition</a>&nbsp;buildPosition(<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;actualQuery,
int&nbsp;position)</pre>
<div class="block">Creates a map of the position of the cursor within each <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> of the parsed tree.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>actualQuery</code> - The actual query is a string representation of the query that may contain
extra whitespace</dd>
<dd><code>position</code> - The position of the cursor in the actual query, which is used to retrieve the
deepest <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a>. The position will be adjusted to fit into the beautified version
of the query</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A new <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/QueryPosition.html" title="class in org.eclipse.persistence.jpa.jpql.parser"><code>QueryPosition</code></a></dd>
</dl>
</li>
</ul>
<a name="getExpression-java.lang.String-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getExpression</h4>
<pre>public&nbsp;<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a>&nbsp;getExpression(<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;actualQuery,
int&nbsp;position)</pre>
<div class="block">Returns the deepest <a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser"><code>Expression</code></a> for the given position.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>actualQuery</code> - The actual query is the text version of the query that may contain extra
whitespace and different formatting than the trim down version generated by the parsed tree</dd>
<dd><code>position</code> - The position in the actual query used to retrieve the <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> located at the given position in the given query</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="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#getGrammar--">getGrammar</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractExpression</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="getJPAVersion--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getJPAVersion</h4>
<pre>public&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="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#getJPAVersion--">getJPAVersion</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractExpression</a></code></dd>
<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="getQueryBNF--">
<!-- -->
</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()</pre>
<div class="block">Returns the BNF 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="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>, which represents the grammar 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="getQueryStatement--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getQueryStatement</h4>
<pre>public&nbsp;<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a>&nbsp;getQueryStatement()</pre>
<div class="block">Returns 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 query, which is either a <b>SELECT</b>, a
<b>DELETE</b> or an <b>UPDATE</b> clause.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The expression representing the Java Persistence query</dd>
</dl>
</li>
</ul>
<a name="getUnknownEndingStatement--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getUnknownEndingStatement</h4>
<pre>public&nbsp;<a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/Expression.html" title="interface in org.eclipse.persistence.jpa.jpql.parser">Expression</a>&nbsp;getUnknownEndingStatement()</pre>
<div class="block">Returns 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 may contain a portion of the query that could not be
parsed, this happens when the query is either incomplete or malformed.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The expression used when the ending of the query is unknown or malformed</dd>
</dl>
</li>
</ul>
<a name="hasQueryStatement--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasQueryStatement</h4>
<pre>public&nbsp;boolean&nbsp;hasQueryStatement()</pre>
<div class="block">Determines whether a query was parsed. The query may be incomplete but it started with one of
the three clauses (<b>SELECT</b>, <b>DELETE FROM</b>, or <b>UPDATE</b>).</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>true</code> the query was parsed; <code>false</code> otherwise</dd>
</dl>
</li>
</ul>
<a name="hasUnknownEndingStatement--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasUnknownEndingStatement</h4>
<pre>public&nbsp;boolean&nbsp;hasUnknownEndingStatement()</pre>
<div class="block">Determines whether the query that got parsed had some malformed or unknown information.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>true</code> if the query could not be parsed correctly
because it is either incomplete or malformed</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="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#isTolerant--">isTolerant</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractExpression</a></code></dd>
<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="parse-org.eclipse.persistence.jpa.jpql.WordParser-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>parse</h4>
<pre>protected&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="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#parse-org.eclipse.persistence.jpa.jpql.WordParser-boolean-">parse</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractExpression</a></code></dd>
<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="toParsedText-java.lang.StringBuilder-boolean-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>toParsedText</h4>
<pre>protected&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="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html#toParsedText-java.lang.StringBuilder-boolean-">toParsedText</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/eclipse/persistence/jpa/jpql/parser/AbstractExpression.html" title="class in org.eclipse.persistence.jpa.jpql.parser">AbstractExpression</a></code></dd>
<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>
</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/JoinFetchBNF.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/JPQLGrammar.html" title="interface 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/JPQLExpression.html" target="_top">Frames</a></li>
<li><a href="JPQLExpression.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="#fields.inherited.from.class.org.eclipse.persistence.jpa.jpql.parser.AbstractExpression">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>Field&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>