blob: aa7d86ecf62659dbb7101db66a9623c59bdc38d7 [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_112) on Mon Oct 14 11:36:13 MSK 2019 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Expression (cayenne-doc: Cayenne Documentation 4.0.2 API)</title>
<meta name="date" content="2019-10-14">
<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="Expression (cayenne-doc: Cayenne Documentation 4.0.2 API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":6,"i4":6,"i5":10,"i6":38,"i7":38,"i8":10,"i9":10,"i10":6,"i11":10,"i12":42,"i13":42,"i14":10,"i15":10,"i16":10,"i17":6,"i18":41,"i19":6,"i20":6,"i21":6,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":6,"i28":10,"i29":10,"i30":10,"i31":10,"i32":10,"i33":6,"i34":6,"i35":10,"i36":6,"i37":10,"i38":10,"i39":10,"i40":10,"i41":10,"i42":10,"i43":10};
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated 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="class-use/Expression.html">Use</a></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>
<div class="subNav">
<ul class="navList">
<li>Prev&nbsp;Class</li>
<li><a href="../../../../org/apache/cayenne/exp/ExpressionException.html" title="class in org.apache.cayenne.exp"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/cayenne/exp/Expression.html" target="_top">Frames</a></li>
<li><a href="Expression.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.apache.cayenne.exp</div>
<h2 title="Class Expression" class="title">Class Expression</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/7/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.apache.cayenne.exp.Expression</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="https://docs.oracle.com/javase/7/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>, <a href="../../../../org/apache/cayenne/util/XMLSerializable.html" title="interface in org.apache.cayenne.util">XMLSerializable</a></dd>
</dl>
<dl>
<dt>Direct Known Subclasses:</dt>
<dd><a href="../../../../org/apache/cayenne/exp/parser/SimpleNode.html" title="class in org.apache.cayenne.exp.parser">SimpleNode</a></dd>
</dl>
<hr>
<br>
<pre>public abstract class <span class="typeNameLabel">Expression</span>
extends <a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>
implements <a href="https://docs.oracle.com/javase/7/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>, <a href="../../../../org/apache/cayenne/util/XMLSerializable.html" title="interface in org.apache.cayenne.util">XMLSerializable</a></pre>
<div class="block">Superclass of Cayenne expressions that defines basic API for expressions use.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../serialized-form.html#org.apache.cayenne.exp.Expression">Serialized Form</a></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 int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#ADD">ADD</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#AND">AND</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#ASTERISK">ASTERISK</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#BETWEEN">BETWEEN</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#BITWISE_AND">BITWISE_AND</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#BITWISE_LEFT_SHIFT">BITWISE_LEFT_SHIFT</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#BITWISE_NOT">BITWISE_NOT</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#BITWISE_OR">BITWISE_OR</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#BITWISE_RIGHT_SHIFT">BITWISE_RIGHT_SHIFT</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#BITWISE_XOR">BITWISE_XOR</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#DB_PATH">DB_PATH</a></span></code>
<div class="block">Expression describes a path relative to a DbEntity.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#DIVIDE">DIVIDE</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#EQUAL_TO">EQUAL_TO</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#FALSE">FALSE</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#FULL_OBJECT">FULL_OBJECT</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#FUNCTION_CALL">FUNCTION_CALL</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#GREATER_THAN">GREATER_THAN</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#GREATER_THAN_EQUAL_TO">GREATER_THAN_EQUAL_TO</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#IN">IN</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#LESS_THAN">LESS_THAN</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#LESS_THAN_EQUAL_TO">LESS_THAN_EQUAL_TO</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#LIKE">LIKE</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#LIKE_IGNORE_CASE">LIKE_IGNORE_CASE</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#LIST">LIST</a></span></code>
<div class="block">Interpreted as a comma-separated list of literals.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#MULTIPLY">MULTIPLY</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#NEGATIVE">NEGATIVE</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#NOT">NOT</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#NOT_BETWEEN">NOT_BETWEEN</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#NOT_EQUAL_TO">NOT_EQUAL_TO</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#NOT_IN">NOT_IN</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#NOT_LIKE">NOT_LIKE</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#NOT_LIKE_IGNORE_CASE">NOT_LIKE_IGNORE_CASE</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#OBJ_PATH">OBJ_PATH</a></span></code>
<div class="block">Expression describes a path relative to an ObjEntity.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#OR">OR</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#PRUNED_NODE">PRUNED_NODE</a></span></code>
<div class="block">A value that a Transformer might return to indicate that a node has to be
pruned from the expression during the transformation.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#SUBTRACT">SUBTRACT</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#TRUE">TRUE</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#type">type</a></span></code>&nbsp;</td>
</tr>
</table>
</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/apache/cayenne/exp/Expression.html#Expression--">Expression</a></span>()</code>&nbsp;</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="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></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><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated 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><a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#andExp-org.apache.cayenne.exp.Expression-">andExp</a></span>(<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;exp)</code>
<div class="block">Chains this expression with another expression using "and".</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#andExp-org.apache.cayenne.exp.Expression-org.apache.cayenne.exp.Expression...-">andExp</a></span>(<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;exp,
<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>...&nbsp;expressions)</code>
<div class="block">Chains this expression with other expressions using "and".</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#appendAsEJBQL-java.lang.Appendable-java.lang.String-">appendAsEJBQL</a></span>(<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Appendable.html?is-external=true" title="class or interface in java.lang">Appendable</a>&nbsp;out,
<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;rootId)</code>
<div class="block">Stores a String representation of Expression as EJBQL using a provided
Appendable.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#appendAsEJBQL-java.util.List-java.lang.Appendable-java.lang.String-">appendAsEJBQL</a></span>(<a href="https://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&gt;&nbsp;parameterAccumulator,
<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Appendable.html?is-external=true" title="class or interface in java.lang">Appendable</a>&nbsp;out,
<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;rootId)</code>
<div class="block">Stores a String representation of Expression as EJBQL using a provided
PrintWriter.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#appendAsString-java.lang.Appendable-">appendAsString</a></span>(<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Appendable.html?is-external=true" title="class or interface in java.lang">Appendable</a>&nbsp;out)</code>
<div class="block">Appends own content as a String to the provided Appendable.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#deepCopy--">deepCopy</a></span>()</code>
<div class="block">Clones this expression.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#encodeAsEJBQL-java.io.PrintWriter-java.lang.String-">encodeAsEJBQL</a></span>(<a href="https://docs.oracle.com/javase/7/docs/api/java/io/PrintWriter.html?is-external=true" title="class or interface in java.io">PrintWriter</a>&nbsp;pw,
<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;rootId)</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
<div class="block"><span class="deprecationComment">since 4.0 use <a href="../../../../org/apache/cayenne/exp/Expression.html#appendAsEJBQL-java.lang.Appendable-java.lang.String-"><code>appendAsEJBQL(Appendable, String)</code></a></span></div>
</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#encodeAsString-java.io.PrintWriter-">encodeAsString</a></span>(<a href="https://docs.oracle.com/javase/7/docs/api/java/io/PrintWriter.html?is-external=true" title="class or interface in java.io">PrintWriter</a>&nbsp;pw)</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
<div class="block"><span class="deprecationComment">since 4.0 use <a href="../../../../org/apache/cayenne/exp/Expression.html#appendAsString-java.lang.Appendable-"><code>appendAsString(Appendable)</code></a>.</span></div>
</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#encodeAsXML-org.apache.cayenne.util.XMLEncoder-">encodeAsXML</a></span>(<a href="../../../../org/apache/cayenne/util/XMLEncoder.html" title="class in org.apache.cayenne.util">XMLEncoder</a>&nbsp;encoder)</code>
<div class="block">Encodes itself, wrapping the string into XML CDATA section.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#equals-java.lang.Object-">equals</a></span>(<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;object)</code>&nbsp;</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#evaluate-java.lang.Object-">evaluate</a></span>(<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)</code>
<div class="block">Calculates expression value with object as a context for path
expressions.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/7/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/apache/cayenne/exp/Expression.html#expName--">expName</a></span>()</code>
<div class="block">Returns String label for this expression.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#expWithParameters-java.util.Map-">expWithParameters</a></span>(<a href="https://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,?&gt;&nbsp;parameters)</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
<div class="block"><span class="deprecationComment">since 4.0 use <a href="../../../../org/apache/cayenne/exp/Expression.html#params-java.util.Map-"><code>params(Map)</code></a></span></div>
</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#expWithParameters-java.util.Map-boolean-">expWithParameters</a></span>(<a href="https://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,?&gt;&nbsp;parameters,
boolean&nbsp;pruneMissing)</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
<div class="block"><span class="deprecationComment">since 4.0 use <a href="../../../../org/apache/cayenne/exp/Expression.html#params-java.util.Map-boolean-"><code>params(Map, boolean)</code></a> instead.</span></div>
</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;<a href="https://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;?&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#filter-java.util.Collection-java.util.Collection-">filter</a></span>(<a href="https://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;T&gt;&nbsp;source,
<a href="https://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;T&gt;&nbsp;target)</code>
<div class="block">Adds objects matching this expression from the source collection to the
target collection.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;<a href="https://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;T&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#filterObjects-java.util.Collection-">filterObjects</a></span>(<a href="https://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;T&gt;&nbsp;objects)</code>
<div class="block">Returns a list of objects that match the expression.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;T</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#first-java.util.List-">first</a></span>(<a href="https://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;T&gt;&nbsp;objects)</code>
<div class="block">Returns the first object in the list that matches the expression.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>protected abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#flattenTree--">flattenTree</a></span>()</code>
<div class="block">Restructures expression to make sure that there are no children of the
same type as this expression.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>static <a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#fromString-java.lang.String-">fromString</a></span>(<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;expressionString)</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
<div class="block"><span class="deprecationComment">since 4.0 use
<a href="../../../../org/apache/cayenne/exp/ExpressionFactory.html#exp-java.lang.String-java.lang.Object...-"><code>ExpressionFactory.exp(String, Object...)</code></a></span></div>
</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#getOperand-int-">getOperand</a></span>(int&nbsp;index)</code>
<div class="block">Returns a value of operand at <code>index</code>.</div>
</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>abstract int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#getOperandCount--">getOperandCount</a></span>()</code>
<div class="block">Returns a count of operands of this expression.</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#getPathAliases--">getPathAliases</a></span>()</code>
<div class="block">Returns a map of path aliases for this expression.</div>
</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#getType--">getType</a></span>()</code>
<div class="block">Returns a type of expression.</div>
</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#hashCode--">hashCode</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#joinExp-int-org.apache.cayenne.exp.Expression-">joinExp</a></span>(int&nbsp;type,
<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;exp)</code>
<div class="block">Creates a new expression that joins this object with another expression,
using specified join type.</div>
</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#joinExp-int-org.apache.cayenne.exp.Expression-org.apache.cayenne.exp.Expression...-">joinExp</a></span>(int&nbsp;type,
<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;exp,
<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>...&nbsp;expressions)</code>
<div class="block">Creates a new expression that joins this object with other expressions,
using specified join type.</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/apache/cayenne/exp/Expression.html#match-java.lang.Object-">match</a></span>(<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)</code>
<div class="block">Calculates expression boolean value with object as a context for path
expressions.</div>
</td>
</tr>
<tr id="i27" class="rowColor">
<td class="colFirst"><code>abstract <a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#notExp--">notExp</a></span>()</code>
<div class="block">Returns a logical NOT of current expression.</div>
</td>
</tr>
<tr id="i28" class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#orExp-org.apache.cayenne.exp.Expression-">orExp</a></span>(<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;exp)</code>
<div class="block">Chains this expression with another expression using "or".</div>
</td>
</tr>
<tr id="i29" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#orExp-org.apache.cayenne.exp.Expression-org.apache.cayenne.exp.Expression...-">orExp</a></span>(<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;exp,
<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>...&nbsp;expressions)</code>
<div class="block">Chains this expression with other expressions using "or".</div>
</td>
</tr>
<tr id="i30" class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#params-java.util.Map-">params</a></span>(<a href="https://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,?&gt;&nbsp;parameters)</code>
<div class="block">Creates and returns a new Expression instance based on this expression,
but with named parameters substituted with provided values.</div>
</td>
</tr>
<tr id="i31" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#params-java.util.Map-boolean-">params</a></span>(<a href="https://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,?&gt;&nbsp;parameters,
boolean&nbsp;pruneMissing)</code>
<div class="block">Creates and returns a new Expression instance based on this expression,
but with named parameters substituted with provided values.If any
subexpressions containing parameters not matching the "name" argument are
found, the behavior depends on "pruneMissing" argument.</div>
</td>
</tr>
<tr id="i32" class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#paramsArray-java.lang.Object...-">paramsArray</a></span>(<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;parameters)</code>
<div class="block">Creates and returns a new Expression instance based on this expression,
but with parameters substituted with provided values.</div>
</td>
</tr>
<tr id="i33" class="rowColor">
<td class="colFirst"><code>protected abstract boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#pruneNodeForPrunedChild-java.lang.Object-">pruneNodeForPrunedChild</a></span>(<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;prunedChild)</code>
<div class="block">Returns true if this node should be pruned from expression tree in the
event a child is removed.</div>
</td>
</tr>
<tr id="i34" class="altColor">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#setOperand-int-java.lang.Object-">setOperand</a></span>(int&nbsp;index,
<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;value)</code>
<div class="block">Sets a value of operand at <code>index</code>.</div>
</td>
</tr>
<tr id="i35" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#setType-int-">setType</a></span>(int&nbsp;type)</code>&nbsp;</td>
</tr>
<tr id="i36" class="altColor">
<td class="colFirst"><code>abstract <a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#shallowCopy--">shallowCopy</a></span>()</code>
<div class="block">Creates a copy of this expression node, without copying children.</div>
</td>
</tr>
<tr id="i37" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/7/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/apache/cayenne/exp/Expression.html#toEJBQL-java.util.List-java.lang.String-">toEJBQL</a></span>(<a href="https://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&gt;&nbsp;parameterAccumulator,
<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;rootId)</code>
<div class="block">Produces an EJBQL string that represents this expression.</div>
</td>
</tr>
<tr id="i38" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/7/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/apache/cayenne/exp/Expression.html#toEJBQL-java.lang.String-">toEJBQL</a></span>(<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;rootId)</code>
<div class="block">Produces an EJBQL string that represents this expression.</div>
</td>
</tr>
<tr id="i39" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/7/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/apache/cayenne/exp/Expression.html#toString--">toString</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i40" class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#transform-org.apache.commons.collections.Transformer-">transform</a></span>(org.apache.commons.collections.Transformer&nbsp;transformer)</code>
<div class="block">Creates a transformed copy of this expression, applying transformation
provided by Transformer to all its nodes.</div>
</td>
</tr>
<tr id="i41" class="rowColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#transformExpression-org.apache.commons.collections.Transformer-">transformExpression</a></span>(org.apache.commons.collections.Transformer&nbsp;transformer)</code>
<div class="block">A recursive method called from "transform" to do the actual
transformation.</div>
</td>
</tr>
<tr id="i42" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#traverse-org.apache.cayenne.exp.Expression-org.apache.cayenne.exp.TraversalHandler-">traverse</a></span>(<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;parentExp,
<a href="../../../../org/apache/cayenne/exp/TraversalHandler.html" title="interface in org.apache.cayenne.exp">TraversalHandler</a>&nbsp;visitor)</code>
<div class="block">Traverses itself and child expressions, notifying visitor via callback
methods as it goes.</div>
</td>
</tr>
<tr id="i43" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/cayenne/exp/Expression.html#traverse-org.apache.cayenne.exp.TraversalHandler-">traverse</a></span>(<a href="../../../../org/apache/cayenne/exp/TraversalHandler.html" title="interface in org.apache.cayenne.exp">TraversalHandler</a>&nbsp;visitor)</code>
<div class="block">Traverses itself and child expressions, notifying visitor via callback
methods as it goes.</div>
</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/7/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/7/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/7/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/7/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/7/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/7/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/7/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/7/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/7/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">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.detail">
<!-- -->
</a>
<h3>Field Detail</h3>
<a name="PRUNED_NODE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>PRUNED_NODE</h4>
<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> PRUNED_NODE</pre>
<div class="block">A value that a Transformer might return to indicate that a node has to be
pruned from the expression during the transformation.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.2</dd>
</dl>
</li>
</ul>
<a name="AND">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>AND</h4>
<pre>public static final&nbsp;int AND</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.AND">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="OR">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>OR</h4>
<pre>public static final&nbsp;int OR</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.OR">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="NOT">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>NOT</h4>
<pre>public static final&nbsp;int NOT</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.NOT">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="EQUAL_TO">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>EQUAL_TO</h4>
<pre>public static final&nbsp;int EQUAL_TO</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.EQUAL_TO">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="NOT_EQUAL_TO">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>NOT_EQUAL_TO</h4>
<pre>public static final&nbsp;int NOT_EQUAL_TO</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.NOT_EQUAL_TO">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="LESS_THAN">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>LESS_THAN</h4>
<pre>public static final&nbsp;int LESS_THAN</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.LESS_THAN">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="GREATER_THAN">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>GREATER_THAN</h4>
<pre>public static final&nbsp;int GREATER_THAN</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.GREATER_THAN">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="LESS_THAN_EQUAL_TO">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>LESS_THAN_EQUAL_TO</h4>
<pre>public static final&nbsp;int LESS_THAN_EQUAL_TO</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.LESS_THAN_EQUAL_TO">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="GREATER_THAN_EQUAL_TO">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>GREATER_THAN_EQUAL_TO</h4>
<pre>public static final&nbsp;int GREATER_THAN_EQUAL_TO</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.GREATER_THAN_EQUAL_TO">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="BETWEEN">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>BETWEEN</h4>
<pre>public static final&nbsp;int BETWEEN</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.BETWEEN">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="IN">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>IN</h4>
<pre>public static final&nbsp;int IN</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.IN">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="LIKE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>LIKE</h4>
<pre>public static final&nbsp;int LIKE</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.LIKE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="LIKE_IGNORE_CASE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>LIKE_IGNORE_CASE</h4>
<pre>public static final&nbsp;int LIKE_IGNORE_CASE</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.LIKE_IGNORE_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="ADD">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ADD</h4>
<pre>public static final&nbsp;int ADD</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.ADD">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="SUBTRACT">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>SUBTRACT</h4>
<pre>public static final&nbsp;int SUBTRACT</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.SUBTRACT">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="MULTIPLY">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>MULTIPLY</h4>
<pre>public static final&nbsp;int MULTIPLY</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.MULTIPLY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="DIVIDE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DIVIDE</h4>
<pre>public static final&nbsp;int DIVIDE</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.DIVIDE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="NEGATIVE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>NEGATIVE</h4>
<pre>public static final&nbsp;int NEGATIVE</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.NEGATIVE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="TRUE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>TRUE</h4>
<pre>public static final&nbsp;int TRUE</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.TRUE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="FALSE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>FALSE</h4>
<pre>public static final&nbsp;int FALSE</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.FALSE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="OBJ_PATH">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>OBJ_PATH</h4>
<pre>public static final&nbsp;int OBJ_PATH</pre>
<div class="block">Expression describes a path relative to an ObjEntity. OBJ_PATH expression
is resolved relative to some root ObjEntity. Path expression components
are separated by "." (dot). Path can point to either one of these:
<ul>
<li><i>An attribute of root ObjEntity.</i> For entity Gallery OBJ_PATH
expression "galleryName" will point to ObjAttribute "galleryName"
<li><i>Another ObjEntity related to root ObjEntity via a chain of
relationships.</i> For entity Gallery OBJ_PATH expression
"paintingArray.toArtist" will point to ObjEntity "Artist"
<li><i>ObjAttribute of another ObjEntity related to root ObjEntity via a
chain of relationships.</i> For entity Gallery OBJ_PATH expression
"paintingArray.toArtist.artistName" will point to ObjAttribute
"artistName"
</ul></div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.OBJ_PATH">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="DB_PATH">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DB_PATH</h4>
<pre>public static final&nbsp;int DB_PATH</pre>
<div class="block">Expression describes a path relative to a DbEntity. DB_PATH expression is
resolved relative to some root DbEntity. Path expression components are
separated by "." (dot). Path can point to either one of these:
<ul>
<li><i>An attribute of root DbEntity.</i> For entity GALLERY, DB_PATH
expression "GALLERY_NAME" will point to a DbAttribute "GALLERY_NAME".</li>
<li><i>Another DbEntity related to root DbEntity via a chain of
relationships.</i> For entity GALLERY DB_PATH expression
"paintingArray.toArtist" will point to DbEntity "ARTIST".</li>
<li><i>DbAttribute of another ObjEntity related to root DbEntity via a
chain of relationships.</i> For entity GALLERY DB_PATH expression
"paintingArray.toArtist.ARTIST_NAME" will point to DbAttribute
"ARTIST_NAME".</li>
</ul></div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.DB_PATH">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="LIST">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>LIST</h4>
<pre>public static final&nbsp;int LIST</pre>
<div class="block">Interpreted as a comma-separated list of literals.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.LIST">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="NOT_BETWEEN">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>NOT_BETWEEN</h4>
<pre>public static final&nbsp;int NOT_BETWEEN</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.NOT_BETWEEN">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="NOT_IN">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>NOT_IN</h4>
<pre>public static final&nbsp;int NOT_IN</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.NOT_IN">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="NOT_LIKE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>NOT_LIKE</h4>
<pre>public static final&nbsp;int NOT_LIKE</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.NOT_LIKE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="NOT_LIKE_IGNORE_CASE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>NOT_LIKE_IGNORE_CASE</h4>
<pre>public static final&nbsp;int NOT_LIKE_IGNORE_CASE</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.NOT_LIKE_IGNORE_CASE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="BITWISE_NOT">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>BITWISE_NOT</h4>
<pre>public static final&nbsp;int BITWISE_NOT</pre>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>3.1</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.BITWISE_NOT">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="BITWISE_AND">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>BITWISE_AND</h4>
<pre>public static final&nbsp;int BITWISE_AND</pre>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>3.1</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.BITWISE_AND">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="BITWISE_OR">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>BITWISE_OR</h4>
<pre>public static final&nbsp;int BITWISE_OR</pre>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>3.1</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.BITWISE_OR">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="BITWISE_XOR">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>BITWISE_XOR</h4>
<pre>public static final&nbsp;int BITWISE_XOR</pre>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>3.1</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.BITWISE_XOR">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="BITWISE_LEFT_SHIFT">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>BITWISE_LEFT_SHIFT</h4>
<pre>public static final&nbsp;int BITWISE_LEFT_SHIFT</pre>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>4.0</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.BITWISE_LEFT_SHIFT">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="BITWISE_RIGHT_SHIFT">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>BITWISE_RIGHT_SHIFT</h4>
<pre>public static final&nbsp;int BITWISE_RIGHT_SHIFT</pre>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>4.0</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.BITWISE_RIGHT_SHIFT">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="FUNCTION_CALL">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>FUNCTION_CALL</h4>
<pre>public static final&nbsp;int FUNCTION_CALL</pre>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>4.0</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.FUNCTION_CALL">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="ASTERISK">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ASTERISK</h4>
<pre>public static final&nbsp;int ASTERISK</pre>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>4.0</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.ASTERISK">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="FULL_OBJECT">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>FULL_OBJECT</h4>
<pre>public static final&nbsp;int FULL_OBJECT</pre>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>4.0</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.FULL_OBJECT">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="type">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>type</h4>
<pre>protected&nbsp;int type</pre>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="Expression--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>Expression</h4>
<pre>public&nbsp;Expression()</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="fromString-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>fromString</h4>
<pre><a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
public static&nbsp;<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;fromString(<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;expressionString)</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">since 4.0 use
<a href="../../../../org/apache/cayenne/exp/ExpressionFactory.html#exp-java.lang.String-java.lang.Object...-"><code>ExpressionFactory.exp(String, Object...)</code></a></span></div>
<div class="block">Parses string, converting it to Expression. If string does not represent
a semantically correct expression, an ExpressionException is thrown.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.1</dd>
</dl>
</li>
</ul>
<a name="getPathAliases--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPathAliases</h4>
<pre>public abstract&nbsp;<a href="https://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;getPathAliases()</pre>
<div class="block">Returns a map of path aliases for this expression. It returns a non-empty
map only if this is a path expression and the aliases are known at the
expression creation time. Otherwise an empty map is returned.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>3.0</dd>
</dl>
</li>
</ul>
<a name="expName--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>expName</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;expName()</pre>
<div class="block">Returns String label for this expression. Used for debugging.</div>
</li>
</ul>
<a name="equals-java.lang.Object-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>equals</h4>
<pre>public&nbsp;boolean&nbsp;equals(<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;object)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
</dl>
</li>
</ul>
<a name="hashCode--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hashCode</h4>
<pre>public&nbsp;int&nbsp;hashCode()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
</dl>
</li>
</ul>
<a name="getType--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getType</h4>
<pre>public&nbsp;int&nbsp;getType()</pre>
<div class="block">Returns a type of expression. Most common types are defined as public
static fields of this interface.</div>
</li>
</ul>
<a name="setType-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setType</h4>
<pre>public&nbsp;void&nbsp;setType(int&nbsp;type)</pre>
</li>
</ul>
<a name="paramsArray-java.lang.Object...-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>paramsArray</h4>
<pre>public&nbsp;<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;paramsArray(<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;parameters)</pre>
<div class="block">Creates and returns a new Expression instance based on this expression,
but with parameters substituted with provided values. This is a
positional style of binding. If a given parameter name is used more than
once, only the first occurrence is treated as "position", subsequent
occurrences are bound with the same value as the first one. If expression
parameters count is different from the array parameter count, an
exception will be thrown.
<p>
positional style would not allow subexpression pruning.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>4.0</dd>
</dl>
</li>
</ul>
<a name="params-java.util.Map-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>params</h4>
<pre>public&nbsp;<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;params(<a href="https://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,?&gt;&nbsp;parameters)</pre>
<div class="block">Creates and returns a new Expression instance based on this expression,
but with named parameters substituted with provided values. Any
subexpressions containing parameters not matching the "name" argument
will be pruned.
<p>
Note that if you want matching against nulls to be preserved, you must
place NULL values for the corresponding keys in the map.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>4.0</dd>
</dl>
</li>
</ul>
<a name="params-java.util.Map-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>params</h4>
<pre>public&nbsp;<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;params(<a href="https://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,?&gt;&nbsp;parameters,
boolean&nbsp;pruneMissing)</pre>
<div class="block">Creates and returns a new Expression instance based on this expression,
but with named parameters substituted with provided values.If any
subexpressions containing parameters not matching the "name" argument are
found, the behavior depends on "pruneMissing" argument. If it is false an
Exception will be thrown, otherwise subexpressions with missing
parameters will be pruned from the resulting expression.
<p>
Note that if you want matching against nulls to be preserved, you must
place NULL values for the corresponding keys in the map.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>4.0</dd>
</dl>
</li>
</ul>
<a name="expWithParameters-java.util.Map-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>expWithParameters</h4>
<pre><a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
public&nbsp;<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;expWithParameters(<a href="https://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,?&gt;&nbsp;parameters)</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">since 4.0 use <a href="../../../../org/apache/cayenne/exp/Expression.html#params-java.util.Map-"><code>params(Map)</code></a></span></div>
<div class="block">A shortcut for <code>expWithParams(params, true)</code>.</div>
</li>
</ul>
<a name="expWithParameters-java.util.Map-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>expWithParameters</h4>
<pre><a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
public&nbsp;<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;expWithParameters(<a href="https://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,?&gt;&nbsp;parameters,
boolean&nbsp;pruneMissing)</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">since 4.0 use <a href="../../../../org/apache/cayenne/exp/Expression.html#params-java.util.Map-boolean-"><code>params(Map, boolean)</code></a> instead.</span></div>
<div class="block">Creates and returns a new Expression instance using this expression as a
prototype. All ExpressionParam operands are substituted with the values
in the <code>params</code> map.
<p>
<i>Null values in the <code>params</code> map should be explicitly
created in the map for the corresponding key. </i>
</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>parameters</code> - a map of parameters, with each key being a string name of an
expression parameter, and value being the value that should be
used in the final expression.</dd>
<dd><code>pruneMissing</code> - If <code>true</code>, subexpressions that rely on missing
parameters will be pruned from the resulting tree. If
<code>false</code> , any missing values will generate an
exception.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Expression resulting from the substitution of parameters with
real values, or null if the whole expression was pruned, due to
the missing parameters.</dd>
</dl>
</li>
</ul>
<a name="joinExp-int-org.apache.cayenne.exp.Expression-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>joinExp</h4>
<pre>public&nbsp;<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;joinExp(int&nbsp;type,
<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;exp)</pre>
<div class="block">Creates a new expression that joins this object with another expression,
using specified join type. It is very useful for incrementally building
chained expressions, like long AND or OR statements.</div>
</li>
</ul>
<a name="joinExp-int-org.apache.cayenne.exp.Expression-org.apache.cayenne.exp.Expression...-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>joinExp</h4>
<pre>public&nbsp;<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;joinExp(int&nbsp;type,
<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;exp,
<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>...&nbsp;expressions)</pre>
<div class="block">Creates a new expression that joins this object with other expressions,
using specified join type. It is very useful for incrementally building
chained expressions, like long AND or OR statements.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>4.0</dd>
</dl>
</li>
</ul>
<a name="andExp-org.apache.cayenne.exp.Expression-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>andExp</h4>
<pre>public&nbsp;<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;andExp(<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;exp)</pre>
<div class="block">Chains this expression with another expression using "and".</div>
</li>
</ul>
<a name="andExp-org.apache.cayenne.exp.Expression-org.apache.cayenne.exp.Expression...-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>andExp</h4>
<pre>public&nbsp;<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;andExp(<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;exp,
<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>...&nbsp;expressions)</pre>
<div class="block">Chains this expression with other expressions using "and".</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>4.0</dd>
</dl>
</li>
</ul>
<a name="orExp-org.apache.cayenne.exp.Expression-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>orExp</h4>
<pre>public&nbsp;<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;orExp(<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;exp)</pre>
<div class="block">Chains this expression with another expression using "or".</div>
</li>
</ul>
<a name="orExp-org.apache.cayenne.exp.Expression-org.apache.cayenne.exp.Expression...-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>orExp</h4>
<pre>public&nbsp;<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;orExp(<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;exp,
<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>...&nbsp;expressions)</pre>
<div class="block">Chains this expression with other expressions using "or".</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>4.0</dd>
</dl>
</li>
</ul>
<a name="notExp--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>notExp</h4>
<pre>public abstract&nbsp;<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;notExp()</pre>
<div class="block">Returns a logical NOT of current expression.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.0.6</dd>
</dl>
</li>
</ul>
<a name="getOperandCount--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getOperandCount</h4>
<pre>public abstract&nbsp;int&nbsp;getOperandCount()</pre>
<div class="block">Returns a count of operands of this expression. In real life there are
unary (count == 1), binary (count == 2) and ternary (count == 3)
expressions.</div>
</li>
</ul>
<a name="getOperand-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getOperand</h4>
<pre>public abstract&nbsp;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;getOperand(int&nbsp;index)</pre>
<div class="block">Returns a value of operand at <code>index</code>. Operand indexing starts
at 0.</div>
</li>
</ul>
<a name="setOperand-int-java.lang.Object-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setOperand</h4>
<pre>public abstract&nbsp;void&nbsp;setOperand(int&nbsp;index,
<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;value)</pre>
<div class="block">Sets a value of operand at <code>index</code>. Operand indexing starts at
0.</div>
</li>
</ul>
<a name="evaluate-java.lang.Object-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>evaluate</h4>
<pre>public abstract&nbsp;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;evaluate(<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)</pre>
<div class="block">Calculates expression value with object as a context for path
expressions.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.1</dd>
</dl>
</li>
</ul>
<a name="match-java.lang.Object-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>match</h4>
<pre>public&nbsp;boolean&nbsp;match(<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)</pre>
<div class="block">Calculates expression boolean value with object as a context for path
expressions.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.1</dd>
</dl>
</li>
</ul>
<a name="first-java.util.List-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>first</h4>
<pre>public&nbsp;&lt;T&gt;&nbsp;T&nbsp;first(<a href="https://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;T&gt;&nbsp;objects)</pre>
<div class="block">Returns the first object in the list that matches the expression.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>3.1</dd>
</dl>
</li>
</ul>
<a name="filterObjects-java.util.Collection-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>filterObjects</h4>
<pre>public&nbsp;&lt;T&gt;&nbsp;<a href="https://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;T&gt;&nbsp;filterObjects(<a href="https://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;T&gt;&nbsp;objects)</pre>
<div class="block">Returns a list of objects that match the expression.</div>
</li>
</ul>
<a name="filter-java.util.Collection-java.util.Collection-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>filter</h4>
<pre>public&nbsp;&lt;T&gt;&nbsp;<a href="https://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;?&gt;&nbsp;filter(<a href="https://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;T&gt;&nbsp;source,
<a href="https://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;T&gt;&nbsp;target)</pre>
<div class="block">Adds objects matching this expression from the source collection to the
target collection.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.1</dd>
</dl>
</li>
</ul>
<a name="deepCopy--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>deepCopy</h4>
<pre>public&nbsp;<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;deepCopy()</pre>
<div class="block">Clones this expression.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.1</dd>
</dl>
</li>
</ul>
<a name="shallowCopy--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shallowCopy</h4>
<pre>public abstract&nbsp;<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;shallowCopy()</pre>
<div class="block">Creates a copy of this expression node, without copying children.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.1</dd>
</dl>
</li>
</ul>
<a name="pruneNodeForPrunedChild-java.lang.Object-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>pruneNodeForPrunedChild</h4>
<pre>protected abstract&nbsp;boolean&nbsp;pruneNodeForPrunedChild(<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;prunedChild)</pre>
<div class="block">Returns true if this node should be pruned from expression tree in the
event a child is removed.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.1</dd>
</dl>
</li>
</ul>
<a name="flattenTree--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>flattenTree</h4>
<pre>protected abstract&nbsp;void&nbsp;flattenTree()</pre>
<div class="block">Restructures expression to make sure that there are no children of the
same type as this expression.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.1</dd>
</dl>
</li>
</ul>
<a name="traverse-org.apache.cayenne.exp.TraversalHandler-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>traverse</h4>
<pre>public&nbsp;void&nbsp;traverse(<a href="../../../../org/apache/cayenne/exp/TraversalHandler.html" title="interface in org.apache.cayenne.exp">TraversalHandler</a>&nbsp;visitor)</pre>
<div class="block">Traverses itself and child expressions, notifying visitor via callback
methods as it goes. This is an Expression-specific implementation of the
"Visitor" design pattern.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.1</dd>
</dl>
</li>
</ul>
<a name="traverse-org.apache.cayenne.exp.Expression-org.apache.cayenne.exp.TraversalHandler-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>traverse</h4>
<pre>protected&nbsp;void&nbsp;traverse(<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;parentExp,
<a href="../../../../org/apache/cayenne/exp/TraversalHandler.html" title="interface in org.apache.cayenne.exp">TraversalHandler</a>&nbsp;visitor)</pre>
<div class="block">Traverses itself and child expressions, notifying visitor via callback
methods as it goes.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.1</dd>
</dl>
</li>
</ul>
<a name="transform-org.apache.commons.collections.Transformer-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>transform</h4>
<pre>public&nbsp;<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;transform(org.apache.commons.collections.Transformer&nbsp;transformer)</pre>
<div class="block">Creates a transformed copy of this expression, applying transformation
provided by Transformer to all its nodes. Null transformer will result in
an identical deep copy of this expression.
<p>
To force a node and its children to be pruned from the copy, Transformer
should return Expression.PRUNED_NODE. Otherwise an expectation is that if
a node is an Expression it must be transformed to null or another
Expression. Any other object type would result in a ExpressionException.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.1</dd>
</dl>
</li>
</ul>
<a name="transformExpression-org.apache.commons.collections.Transformer-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>transformExpression</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;transformExpression(org.apache.commons.collections.Transformer&nbsp;transformer)</pre>
<div class="block">A recursive method called from "transform" to do the actual
transformation.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>null, Expression.PRUNED_NODE or transformed expression.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.2</dd>
</dl>
</li>
</ul>
<a name="encodeAsXML-org.apache.cayenne.util.XMLEncoder-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>encodeAsXML</h4>
<pre>public&nbsp;void&nbsp;encodeAsXML(<a href="../../../../org/apache/cayenne/util/XMLEncoder.html" title="class in org.apache.cayenne.util">XMLEncoder</a>&nbsp;encoder)</pre>
<div class="block">Encodes itself, wrapping the string into XML CDATA section.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/cayenne/util/XMLSerializable.html#encodeAsXML-org.apache.cayenne.util.XMLEncoder-">encodeAsXML</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/cayenne/util/XMLSerializable.html" title="interface in org.apache.cayenne.util">XMLSerializable</a></code></dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.1</dd>
</dl>
</li>
</ul>
<a name="encodeAsString-java.io.PrintWriter-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>encodeAsString</h4>
<pre><a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
public abstract&nbsp;void&nbsp;encodeAsString(<a href="https://docs.oracle.com/javase/7/docs/api/java/io/PrintWriter.html?is-external=true" title="class or interface in java.io">PrintWriter</a>&nbsp;pw)</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">since 4.0 use <a href="../../../../org/apache/cayenne/exp/Expression.html#appendAsString-java.lang.Appendable-"><code>appendAsString(Appendable)</code></a>.</span></div>
<div class="block">Stores a String representation of Expression using a provided
PrintWriter.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.1</dd>
</dl>
</li>
</ul>
<a name="appendAsString-java.lang.Appendable-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>appendAsString</h4>
<pre>public abstract&nbsp;void&nbsp;appendAsString(<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Appendable.html?is-external=true" title="class or interface in java.lang">Appendable</a>&nbsp;out)
throws <a href="https://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Appends own content as a String to the provided Appendable.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>4.0</dd>
</dl>
</li>
</ul>
<a name="encodeAsEJBQL-java.io.PrintWriter-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>encodeAsEJBQL</h4>
<pre><a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
public abstract&nbsp;void&nbsp;encodeAsEJBQL(<a href="https://docs.oracle.com/javase/7/docs/api/java/io/PrintWriter.html?is-external=true" title="class or interface in java.io">PrintWriter</a>&nbsp;pw,
<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;rootId)</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">since 4.0 use <a href="../../../../org/apache/cayenne/exp/Expression.html#appendAsEJBQL-java.lang.Appendable-java.lang.String-"><code>appendAsEJBQL(Appendable, String)</code></a></span></div>
<div class="block">Stores a String representation of Expression as EJBQL using a provided
PrintWriter. DB path expressions produce non-standard EJBQL path
expressions.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>3.0</dd>
</dl>
</li>
</ul>
<a name="appendAsEJBQL-java.lang.Appendable-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>appendAsEJBQL</h4>
<pre>public&nbsp;void&nbsp;appendAsEJBQL(<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Appendable.html?is-external=true" title="class or interface in java.lang">Appendable</a>&nbsp;out,
<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;rootId)
throws <a href="https://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Stores a String representation of Expression as EJBQL using a provided
Appendable. DB path expressions produce non-standard EJBQL path
expressions.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>4.0</dd>
</dl>
</li>
</ul>
<a name="appendAsEJBQL-java.util.List-java.lang.Appendable-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>appendAsEJBQL</h4>
<pre>public abstract&nbsp;void&nbsp;appendAsEJBQL(<a href="https://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&gt;&nbsp;parameterAccumulator,
<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Appendable.html?is-external=true" title="class or interface in java.lang">Appendable</a>&nbsp;out,
<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;rootId)
throws <a href="https://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Stores a String representation of Expression as EJBQL using a provided
PrintWriter. DB path expressions produce non-standard EJBQL path
expressions. If the parameterAccumulator is supplied then as the EJBQL is
output, it may load parameters into this list. In this case, the EJBQL
output will contain reference to positional parameters. If no
parameterAccumulator is supplied and a scalar type is encountered for
which there is no EJBQL literal representation (such as dates) then this
method will throw a runtime exception to indicate that it was not
possible to generate a string-only representation of the Expression in
EJBQL.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>4.0</dd>
</dl>
</li>
</ul>
<a name="toString--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toString</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/7/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/7/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/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
</dl>
</li>
</ul>
<a name="toEJBQL-java.util.List-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toEJBQL</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;toEJBQL(<a href="https://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&gt;&nbsp;parameterAccumulator,
<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;rootId)</pre>
<div class="block">Produces an EJBQL string that represents this expression. If the
parameterAccumulator is supplied then, where appropriate, parameters to
the EJBQL may be written into the parameterAccumulator. If this method
encounters a scalar type which is not able to be represented as an EJBQL
literal then this method will throw a runtime exception to indicate that
it was not possible to generate a string-only representation of the
Expression as EJBQL.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>3.1</dd>
</dl>
</li>
</ul>
<a name="toEJBQL-java.lang.String-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>toEJBQL</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;toEJBQL(<a href="https://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;rootId)</pre>
<div class="block">Produces an EJBQL string that represents this expression. If this method
encounters a scalar type which is not able to be represented as an EJBQL
literal then this method will throw a runtime exception.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>3.0</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="class-use/Expression.html">Use</a></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>
<div class="subNav">
<ul class="navList">
<li>Prev&nbsp;Class</li>
<li><a href="../../../../org/apache/cayenne/exp/ExpressionException.html" title="class in org.apache.cayenne.exp"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/cayenne/exp/Expression.html" target="_top">Frames</a></li>
<li><a href="Expression.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; 2001&#x2013;2019 <a href="http://cayenne.apache.org/">Apache Cayenne</a>. All rights reserved.</small></p>
</body>
</html>