<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="de">
<head>
<!-- Generated by javadoc (1.8.0_252) on Thu Sep 03 11:54:32 CEST 2020 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Package org.apache.openjpa.kernel.exps (OpenJPA Parent POM 3.1.2 API)</title>
<meta name="date" content="2020-09-03">
<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="Uses of Package org.apache.openjpa.kernel.exps (OpenJPA Parent POM 3.1.2 API)";
        }
    }
    catch(err) {
    }
//-->
</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</li>
<li class="navBarCell1Rev">Use</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</li>
<li>Next</li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/openjpa/kernel/exps/package-use.html" target="_top">Frames</a></li>
<li><a href="package-use.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>
<a name="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h1 title="Uses of Package org.apache.openjpa.kernel.exps" class="title">Uses of Package<br>org.apache.openjpa.kernel.exps</h1>
</div>
<div class="contentContainer">
<ul class="blockList">
<li class="blockList">
<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
<caption><span>Packages that use <a href="../../../../../org/apache/openjpa/kernel/exps/package-summary.html">org.apache.openjpa.kernel.exps</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Package</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="#org.apache.openjpa.conf">org.apache.openjpa.conf</a></td>
<td class="colLast">
<div class="block"><strong>OpenJPA Configuration</strong>


    This package provides base OpenJPA configuration interfaces.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="#org.apache.openjpa.datacache">org.apache.openjpa.datacache</a></td>
<td class="colLast">
<div class="block"><strong>OpenJPA Data Cache</strong>


    OpenJPA's data and query caching frameworks.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="#org.apache.openjpa.jdbc.kernel">org.apache.openjpa.jdbc.kernel</a></td>
<td class="colLast">
<div class="block"><strong>OpenJPA-JDBC Runtime Kernel</strong>


    Runtime services for the JDBC OpenJPA implementation.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="#org.apache.openjpa.jdbc.kernel.exps">org.apache.openjpa.jdbc.kernel.exps</a></td>
<td class="colLast">
<div class="block"><strong>OpenJPA-JDBC Expression Tree</strong></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="#org.apache.openjpa.jdbc.sql">org.apache.openjpa.jdbc.sql</a></td>
<td class="colLast">
<div class="block"><strong>OpenJPA-JDBC SQL Abstraction</strong>


    Utilities for generating SQL.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="#org.apache.openjpa.kernel">org.apache.openjpa.kernel</a></td>
<td class="colLast">
<div class="block"><strong>OpenJPA Runtime Kernel</strong>


    This package provides a common OpenJPA runtime environment that can be
    adapted for use with various data store mechanisms.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="#org.apache.openjpa.kernel.exps">org.apache.openjpa.kernel.exps</a></td>
<td class="colLast">
<div class="block"><strong>OpenJPA Expression Tree</strong></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="#org.apache.openjpa.kernel.jpql">org.apache.openjpa.kernel.jpql</a></td>
<td class="colLast">
<div class="block"><strong>JPA Query Language Support</strong>


    Allow any spec or store to use JPQL.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="#org.apache.openjpa.persistence">org.apache.openjpa.persistence</a></td>
<td class="colLast">
<div class="block"><strong>OpenJPA JPA</strong>


    This package provides an JPA facade to OpenJPA.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="#org.apache.openjpa.persistence.criteria">org.apache.openjpa.persistence.criteria</a></td>
<td class="colLast">
<div class="block"><strong>OpenJPA Criteria Query</strong>


    This package provides an implementation of Criteria API in JPA 2.0 Specification
    and extended features such as Query-By-Example.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="#org.apache.openjpa.persistence.meta">org.apache.openjpa.persistence.meta</a></td>
<td class="colLast">
<div class="block"><strong>OpenJPA MetaModel</strong>


    This package provides an implementation of Metamodel API of JPA 2.0 Specification.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="#org.apache.openjpa.slice.jdbc">org.apache.openjpa.slice.jdbc</a></td>
<td class="colLast">
<div class="block">Implements Distributed version of JDBCStoreManager and JDBCStoreQuery.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList"><a name="org.apache.openjpa.conf">
<!--   -->
</a>
<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
<caption><span>Classes in <a href="../../../../../org/apache/openjpa/kernel/exps/package-summary.html">org.apache.openjpa.kernel.exps</a> used by <a href="../../../../../org/apache/openjpa/conf/package-summary.html">org.apache.openjpa.conf</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Class and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/AggregateListener.html#org.apache.openjpa.conf">AggregateListener</a>
<div class="block">An aggregate listener aggregates data produced by an ExpressionQuery.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/FilterListener.html#org.apache.openjpa.conf">FilterListener</a>
<div class="block">A filter listener extends expression filters with custom functionality.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList"><a name="org.apache.openjpa.datacache">
<!--   -->
</a>
<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
<caption><span>Classes in <a href="../../../../../org/apache/openjpa/kernel/exps/package-summary.html">org.apache.openjpa.kernel.exps</a> used by <a href="../../../../../org/apache/openjpa/datacache/package-summary.html">org.apache.openjpa.datacache</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Class and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/AggregateListener.html#org.apache.openjpa.datacache">AggregateListener</a>
<div class="block">An aggregate listener aggregates data produced by an ExpressionQuery.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/FilterListener.html#org.apache.openjpa.datacache">FilterListener</a>
<div class="block">A filter listener extends expression filters with custom functionality.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList"><a name="org.apache.openjpa.jdbc.kernel">
<!--   -->
</a>
<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
<caption><span>Classes in <a href="../../../../../org/apache/openjpa/kernel/exps/package-summary.html">org.apache.openjpa.kernel.exps</a> used by <a href="../../../../../org/apache/openjpa/jdbc/kernel/package-summary.html">org.apache.openjpa.jdbc.kernel</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Class and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/Context.html#org.apache.openjpa.jdbc.kernel">Context</a>
<div class="block">JPQL / Criteria Query Context</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/ExpressionFactory.html#org.apache.openjpa.jdbc.kernel">ExpressionFactory</a>
<div class="block">The ExpressionFactory must be implemented by a particular runtime
 to form <a href="../../../../../org/apache/openjpa/kernel/exps/Expression.html" title="interface in org.apache.openjpa.kernel.exps"><code>Expression</code></a>s in its native query language.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/ExpressionParser.html#org.apache.openjpa.jdbc.kernel">ExpressionParser</a>
<div class="block">Parser for query languages that will be used by a <code>ExpressionQuery</code>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/FilterListener.html#org.apache.openjpa.jdbc.kernel">FilterListener</a>
<div class="block">A filter listener extends expression filters with custom functionality.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/QueryExpressions.html#org.apache.openjpa.jdbc.kernel">QueryExpressions</a>
<div class="block">Struct to hold the state of a parsed expression query.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList"><a name="org.apache.openjpa.jdbc.kernel.exps">
<!--   -->
</a>
<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
<caption><span>Classes in <a href="../../../../../org/apache/openjpa/kernel/exps/package-summary.html">org.apache.openjpa.kernel.exps</a> used by <a href="../../../../../org/apache/openjpa/jdbc/kernel/exps/package-summary.html">org.apache.openjpa.jdbc.kernel.exps</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Class and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/AggregateListener.html#org.apache.openjpa.jdbc.kernel.exps">AggregateListener</a>
<div class="block">An aggregate listener aggregates data produced by an ExpressionQuery.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/Arguments.html#org.apache.openjpa.jdbc.kernel.exps">Arguments</a>
<div class="block">Multiple arguments to a function call.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/CandidatePath.html#org.apache.openjpa.jdbc.kernel.exps">CandidatePath</a>
<div class="block">A path represents a traversal into fields of a candidate object.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/Constant.html#org.apache.openjpa.jdbc.kernel.exps">Constant</a>
<div class="block">Interface for any query constant value.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/Context.html#org.apache.openjpa.jdbc.kernel.exps">Context</a>
<div class="block">JPQL / Criteria Query Context</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/Expression.html#org.apache.openjpa.jdbc.kernel.exps">Expression</a>
<div class="block">Interface for a set of conditions that must be met for the query
 to be true.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/ExpressionFactory.html#org.apache.openjpa.jdbc.kernel.exps">ExpressionFactory</a>
<div class="block">The ExpressionFactory must be implemented by a particular runtime
 to form <a href="../../../../../org/apache/openjpa/kernel/exps/Expression.html" title="interface in org.apache.openjpa.kernel.exps"><code>Expression</code></a>s in its native query language.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/ExpressionVisitor.html#org.apache.openjpa.jdbc.kernel.exps">ExpressionVisitor</a>
<div class="block">Visits nodes of a query expression tree.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/FilterListener.html#org.apache.openjpa.jdbc.kernel.exps">FilterListener</a>
<div class="block">A filter listener extends expression filters with custom functionality.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/Literal.html#org.apache.openjpa.jdbc.kernel.exps">Literal</a>
<div class="block">Interface for any literal value.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/Parameter.html#org.apache.openjpa.jdbc.kernel.exps">Parameter</a>
<div class="block">A query parameter.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/Path.html#org.apache.openjpa.jdbc.kernel.exps">Path</a>
<div class="block">A path represents a traversal into fields of a candidate object.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/QueryExpressions.html#org.apache.openjpa.jdbc.kernel.exps">QueryExpressions</a>
<div class="block">Struct to hold the state of a parsed expression query.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/StringContains.html#org.apache.openjpa.jdbc.kernel.exps">StringContains</a>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
<div class="block"><span class="deprecationComment">Use <code>matches()</code> instead.</span></div>
</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/Subquery.html#org.apache.openjpa.jdbc.kernel.exps">Subquery</a>
<div class="block">Query value representing a subquery.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/Val.html#org.apache.openjpa.jdbc.kernel.exps">Val</a>
<div class="block">An in-memory representation of a <a href="../../../../../org/apache/openjpa/kernel/exps/Value.html" title="interface in org.apache.openjpa.kernel.exps"><code>Value</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/Value.html#org.apache.openjpa.jdbc.kernel.exps">Value</a>
<div class="block">Interface for any non-operator in a query filter, including
 constants, variables, and object fields.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/WildcardMatch.html#org.apache.openjpa.jdbc.kernel.exps">WildcardMatch</a>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
<div class="block"><span class="deprecationComment">Use <code>matches()</code> instead.</span></div>
</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList"><a name="org.apache.openjpa.jdbc.sql">
<!--   -->
</a>
<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
<caption><span>Classes in <a href="../../../../../org/apache/openjpa/kernel/exps/package-summary.html">org.apache.openjpa.kernel.exps</a> used by <a href="../../../../../org/apache/openjpa/jdbc/sql/package-summary.html">org.apache.openjpa.jdbc.sql</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Class and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/Context.html#org.apache.openjpa.jdbc.sql">Context</a>
<div class="block">JPQL / Criteria Query Context</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/Parameter.html#org.apache.openjpa.jdbc.sql">Parameter</a>
<div class="block">A query parameter.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/Path.html#org.apache.openjpa.jdbc.sql">Path</a>
<div class="block">A path represents a traversal into fields of a candidate object.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/Value.html#org.apache.openjpa.jdbc.sql">Value</a>
<div class="block">Interface for any non-operator in a query filter, including
 constants, variables, and object fields.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList"><a name="org.apache.openjpa.kernel">
<!--   -->
</a>
<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
<caption><span>Classes in <a href="../../../../../org/apache/openjpa/kernel/exps/package-summary.html">org.apache.openjpa.kernel.exps</a> used by <a href="../../../../../org/apache/openjpa/kernel/package-summary.html">org.apache.openjpa.kernel</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Class and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/AggregateListener.html#org.apache.openjpa.kernel">AggregateListener</a>
<div class="block">An aggregate listener aggregates data produced by an ExpressionQuery.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/ExpressionFactory.html#org.apache.openjpa.kernel">ExpressionFactory</a>
<div class="block">The ExpressionFactory must be implemented by a particular runtime
 to form <a href="../../../../../org/apache/openjpa/kernel/exps/Expression.html" title="interface in org.apache.openjpa.kernel.exps"><code>Expression</code></a>s in its native query language.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/ExpressionParser.html#org.apache.openjpa.kernel">ExpressionParser</a>
<div class="block">Parser for query languages that will be used by a <code>ExpressionQuery</code>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/FilterListener.html#org.apache.openjpa.kernel">FilterListener</a>
<div class="block">A filter listener extends expression filters with custom functionality.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/InMemoryExpressionFactory.html#org.apache.openjpa.kernel">InMemoryExpressionFactory</a>
<div class="block">Expression factory implementation that can be used to execute queries
 in memory.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/QueryExpressions.html#org.apache.openjpa.kernel">QueryExpressions</a>
<div class="block">Struct to hold the state of a parsed expression query.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/Resolver.html#org.apache.openjpa.kernel">Resolver</a>
<div class="block">A Resolver is used to resolve listeners and class or entity names
 that appear in a query.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/Value.html#org.apache.openjpa.kernel">Value</a>
<div class="block">Interface for any non-operator in a query filter, including
 constants, variables, and object fields.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList"><a name="org.apache.openjpa.kernel.exps">
<!--   -->
</a>
<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
<caption><span>Classes in <a href="../../../../../org/apache/openjpa/kernel/exps/package-summary.html">org.apache.openjpa.kernel.exps</a> used by <a href="../../../../../org/apache/openjpa/kernel/exps/package-summary.html">org.apache.openjpa.kernel.exps</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Class and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/AggregateListener.html#org.apache.openjpa.kernel.exps">AggregateListener</a>
<div class="block">An aggregate listener aggregates data produced by an ExpressionQuery.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/Arguments.html#org.apache.openjpa.kernel.exps">Arguments</a>
<div class="block">Multiple arguments to a function call.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/Constant.html#org.apache.openjpa.kernel.exps">Constant</a>
<div class="block">Interface for any query constant value.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/Context.html#org.apache.openjpa.kernel.exps">Context</a>
<div class="block">JPQL / Criteria Query Context</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/Exp.html#org.apache.openjpa.kernel.exps">Exp</a>
<div class="block">An in-memory representation of an <a href="../../../../../org/apache/openjpa/kernel/exps/Expression.html" title="interface in org.apache.openjpa.kernel.exps"><code>Expression</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/Expression.html#org.apache.openjpa.kernel.exps">Expression</a>
<div class="block">Interface for a set of conditions that must be met for the query
 to be true.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/ExpressionFactory.html#org.apache.openjpa.kernel.exps">ExpressionFactory</a>
<div class="block">The ExpressionFactory must be implemented by a particular runtime
 to form <a href="../../../../../org/apache/openjpa/kernel/exps/Expression.html" title="interface in org.apache.openjpa.kernel.exps"><code>Expression</code></a>s in its native query language.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/ExpressionVisitor.html#org.apache.openjpa.kernel.exps">ExpressionVisitor</a>
<div class="block">Visits nodes of a query expression tree.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/FilterListener.html#org.apache.openjpa.kernel.exps">FilterListener</a>
<div class="block">A filter listener extends expression filters with custom functionality.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/Literal.html#org.apache.openjpa.kernel.exps">Literal</a>
<div class="block">Interface for any literal value.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/Parameter.html#org.apache.openjpa.kernel.exps">Parameter</a>
<div class="block">A query parameter.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/Path.html#org.apache.openjpa.kernel.exps">Path</a>
<div class="block">A path represents a traversal into fields of a candidate object.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/QueryExpressions.html#org.apache.openjpa.kernel.exps">QueryExpressions</a>
<div class="block">Struct to hold the state of a parsed expression query.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/Resolver.html#org.apache.openjpa.kernel.exps">Resolver</a>
<div class="block">A Resolver is used to resolve listeners and class or entity names
 that appear in a query.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/Subquery.html#org.apache.openjpa.kernel.exps">Subquery</a>
<div class="block">Query value representing a subquery.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/Val.html#org.apache.openjpa.kernel.exps">Val</a>
<div class="block">An in-memory representation of a <a href="../../../../../org/apache/openjpa/kernel/exps/Value.html" title="interface in org.apache.openjpa.kernel.exps"><code>Value</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/Value.html#org.apache.openjpa.kernel.exps">Value</a>
<div class="block">Interface for any non-operator in a query filter, including
 constants, variables, and object fields.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList"><a name="org.apache.openjpa.kernel.jpql">
<!--   -->
</a>
<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
<caption><span>Classes in <a href="../../../../../org/apache/openjpa/kernel/exps/package-summary.html">org.apache.openjpa.kernel.exps</a> used by <a href="../../../../../org/apache/openjpa/kernel/jpql/package-summary.html">org.apache.openjpa.kernel.jpql</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Class and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/AbstractExpressionBuilder.html#org.apache.openjpa.kernel.jpql">AbstractExpressionBuilder</a>
<div class="block">Abstract base class to help build expressions.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/Expression.html#org.apache.openjpa.kernel.jpql">Expression</a>
<div class="block">Interface for a set of conditions that must be met for the query
 to be true.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/ExpressionFactory.html#org.apache.openjpa.kernel.jpql">ExpressionFactory</a>
<div class="block">The ExpressionFactory must be implemented by a particular runtime
 to form <a href="../../../../../org/apache/openjpa/kernel/exps/Expression.html" title="interface in org.apache.openjpa.kernel.exps"><code>Expression</code></a>s in its native query language.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/ExpressionParser.html#org.apache.openjpa.kernel.jpql">ExpressionParser</a>
<div class="block">Parser for query languages that will be used by a <code>ExpressionQuery</code>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/QueryExpressions.html#org.apache.openjpa.kernel.jpql">QueryExpressions</a>
<div class="block">Struct to hold the state of a parsed expression query.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/Resolver.html#org.apache.openjpa.kernel.jpql">Resolver</a>
<div class="block">A Resolver is used to resolve listeners and class or entity names
 that appear in a query.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/Value.html#org.apache.openjpa.kernel.jpql">Value</a>
<div class="block">Interface for any non-operator in a query filter, including
 constants, variables, and object fields.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList"><a name="org.apache.openjpa.persistence">
<!--   -->
</a>
<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
<caption><span>Classes in <a href="../../../../../org/apache/openjpa/kernel/exps/package-summary.html">org.apache.openjpa.kernel.exps</a> used by <a href="../../../../../org/apache/openjpa/persistence/package-summary.html">org.apache.openjpa.persistence</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Class and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/AggregateListener.html#org.apache.openjpa.persistence">AggregateListener</a>
<div class="block">An aggregate listener aggregates data produced by an ExpressionQuery.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/FilterListener.html#org.apache.openjpa.persistence">FilterListener</a>
<div class="block">A filter listener extends expression filters with custom functionality.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList"><a name="org.apache.openjpa.persistence.criteria">
<!--   -->
</a>
<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
<caption><span>Classes in <a href="../../../../../org/apache/openjpa/kernel/exps/package-summary.html">org.apache.openjpa.kernel.exps</a> used by <a href="../../../../../org/apache/openjpa/persistence/criteria/package-summary.html">org.apache.openjpa.persistence.criteria</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Class and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/ExpressionFactory.html#org.apache.openjpa.persistence.criteria">ExpressionFactory</a>
<div class="block">The ExpressionFactory must be implemented by a particular runtime
 to form <a href="../../../../../org/apache/openjpa/kernel/exps/Expression.html" title="interface in org.apache.openjpa.kernel.exps"><code>Expression</code></a>s in its native query language.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/ExpressionParser.html#org.apache.openjpa.persistence.criteria">ExpressionParser</a>
<div class="block">Parser for query languages that will be used by a <code>ExpressionQuery</code>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/QueryExpressions.html#org.apache.openjpa.persistence.criteria">QueryExpressions</a>
<div class="block">Struct to hold the state of a parsed expression query.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/Value.html#org.apache.openjpa.persistence.criteria">Value</a>
<div class="block">Interface for any non-operator in a query filter, including
 constants, variables, and object fields.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList"><a name="org.apache.openjpa.persistence.meta">
<!--   -->
</a>
<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
<caption><span>Classes in <a href="../../../../../org/apache/openjpa/kernel/exps/package-summary.html">org.apache.openjpa.kernel.exps</a> used by <a href="../../../../../org/apache/openjpa/persistence/meta/package-summary.html">org.apache.openjpa.persistence.meta</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Class and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/AggregateListener.html#org.apache.openjpa.persistence.meta">AggregateListener</a>
<div class="block">An aggregate listener aggregates data produced by an ExpressionQuery.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/FilterListener.html#org.apache.openjpa.persistence.meta">FilterListener</a>
<div class="block">A filter listener extends expression filters with custom functionality.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/Resolver.html#org.apache.openjpa.persistence.meta">Resolver</a>
<div class="block">A Resolver is used to resolve listeners and class or entity names
 that appear in a query.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList"><a name="org.apache.openjpa.slice.jdbc">
<!--   -->
</a>
<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
<caption><span>Classes in <a href="../../../../../org/apache/openjpa/kernel/exps/package-summary.html">org.apache.openjpa.kernel.exps</a> used by <a href="../../../../../org/apache/openjpa/slice/jdbc/package-summary.html">org.apache.openjpa.slice.jdbc</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Class and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="../../../../../org/apache/openjpa/kernel/exps/class-use/QueryExpressions.html#org.apache.openjpa.slice.jdbc">QueryExpressions</a>
<div class="block">Struct to hold the state of a parsed expression query.</div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
<!-- ======= 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</li>
<li class="navBarCell1Rev">Use</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</li>
<li>Next</li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/openjpa/kernel/exps/package-use.html" target="_top">Frames</a></li>
<li><a href="package-use.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>
<a name="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2006&#x2013;2020 <a href="http://www.apache.org">Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>
