<!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_92) on Wed Dec 06 14:36:26 CET 2017 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Package org.apache.olingo.odata2.api.uri.expression (olingo-odata2-parent 2.0.10 API)</title>
<meta name="date" content="2017-12-06">
<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.olingo.odata2.api.uri.expression (olingo-odata2-parent 2.0.10 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/olingo/odata2/api/uri/expression/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.olingo.odata2.api.uri.expression" class="title">Uses of Package<br>org.apache.olingo.odata2.api.uri.expression</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/olingo/odata2/api/uri/expression/package-summary.html">org.apache.olingo.odata2.api.uri.expression</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.olingo.odata2.api.uri">org.apache.olingo.odata2.api.uri</a></td>
<td class="colLast">
<div class="block">URI Parser Facade</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="#org.apache.olingo.odata2.api.uri.expression">org.apache.olingo.odata2.api.uri.expression</a></td>
<td class="colLast">
<div class="block">Expression Parser</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="#org.apache.olingo.odata2.api.uri.info">org.apache.olingo.odata2.api.uri.info</a></td>
<td class="colLast">
<div class="block">URI Parser Result Views</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList"><a name="org.apache.olingo.odata2.api.uri">
<!--   -->
</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/olingo/odata2/api/uri/expression/package-summary.html">org.apache.olingo.odata2.api.uri.expression</a> used by <a href="../../../../../../../org/apache/olingo/odata2/api/uri/package-summary.html">org.apache.olingo.odata2.api.uri</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/olingo/odata2/api/uri/expression/class-use/ExpressionParserException.html#org.apache.olingo.odata2.api.uri">ExpressionParserException</a>
<div class="block">Exception thrown while parsing a filter or orderby expression</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../../../org/apache/olingo/odata2/api/uri/expression/class-use/FilterExpression.html#org.apache.olingo.odata2.api.uri">FilterExpression</a>
<div class="block">Represents a $filter expression in the expression tree
 Used to define the <b>root</b> expression node in an $filter expression tree.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../../../org/apache/olingo/odata2/api/uri/expression/class-use/OrderByExpression.html#org.apache.olingo.odata2.api.uri">OrderByExpression</a>
<div class="block">Represents a $orderby expression
 Used to define the <b>root</b> expression node in an $filter expression tree.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList"><a name="org.apache.olingo.odata2.api.uri.expression">
<!--   -->
</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/olingo/odata2/api/uri/expression/package-summary.html">org.apache.olingo.odata2.api.uri.expression</a> used by <a href="../../../../../../../org/apache/olingo/odata2/api/uri/expression/package-summary.html">org.apache.olingo.odata2.api.uri.expression</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/olingo/odata2/api/uri/expression/class-use/BinaryExpression.html#org.apache.olingo.odata2.api.uri.expression">BinaryExpression</a>
<div class="block">Represents a binary expression node in the expression tree returned by the methods
 <br>
 <br>
 A binary expression node is inserted in the expression tree for any valid
 ODATA binary operator in <a href="../../../../../../../org/apache/olingo/odata2/api/uri/expression/BinaryOperator.html" title="enum in org.apache.olingo.odata2.api.uri.expression"><code>BinaryOperator</code></a> (e.g.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../../../org/apache/olingo/odata2/api/uri/expression/class-use/BinaryOperator.html#org.apache.olingo.odata2.api.uri.expression">BinaryOperator</a>
<div class="block">Enumerations for supported binary operators of the ODATA expression parser
 for ODATA version 2.0 (with some restrictions)</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../../../org/apache/olingo/odata2/api/uri/expression/class-use/CommonExpression.html#org.apache.olingo.odata2.api.uri.expression">CommonExpression</a>
<div class="block">Parent class of all classes used to build the expression tree
 <br>
 <br></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../../../org/apache/olingo/odata2/api/uri/expression/class-use/ExceptionVisitExpression.html#org.apache.olingo.odata2.api.uri.expression">ExceptionVisitExpression</a>
<div class="block">Exception thrown while traversing/visiting a filter expression tree</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../../../org/apache/olingo/odata2/api/uri/expression/class-use/ExpressionKind.html#org.apache.olingo.odata2.api.uri.expression">ExpressionKind</a>
<div class="block">Enumeration describing all possible node types inside an expression tree</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../../../org/apache/olingo/odata2/api/uri/expression/class-use/ExpressionVisitor.html#org.apache.olingo.odata2.api.uri.expression">ExpressionVisitor</a>
<div class="block">Interface <a href="../../../../../../../org/apache/olingo/odata2/api/uri/expression/ExpressionVisitor.html" title="interface in org.apache.olingo.odata2.api.uri.expression"><code>ExpressionVisitor</code></a> is used to traverse a $filter or $orderby expression tree.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../../../org/apache/olingo/odata2/api/uri/expression/class-use/FilterExpression.html#org.apache.olingo.odata2.api.uri.expression">FilterExpression</a>
<div class="block">Represents a $filter expression in the expression tree
 Used to define the <b>root</b> expression node in an $filter expression tree.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../../../org/apache/olingo/odata2/api/uri/expression/class-use/LiteralExpression.html#org.apache.olingo.odata2.api.uri.expression">LiteralExpression</a>
<div class="block">Represents a literal expression node in the expression tree
 <br>
 <br></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../../../org/apache/olingo/odata2/api/uri/expression/class-use/MemberExpression.html#org.apache.olingo.odata2.api.uri.expression">MemberExpression</a>
<div class="block">Represents a member expression in the expression tree
 <br>
 <br></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../../../org/apache/olingo/odata2/api/uri/expression/class-use/MethodExpression.html#org.apache.olingo.odata2.api.uri.expression">MethodExpression</a>
<div class="block">Represents a method expression in the expression tree
 <br>
 <br></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../../../org/apache/olingo/odata2/api/uri/expression/class-use/MethodOperator.html#org.apache.olingo.odata2.api.uri.expression">MethodOperator</a>
<div class="block">Enumerations for all supported methods of the ODATA expression parser
 for ODATA version 2.0 (with some restrictions).</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../../../org/apache/olingo/odata2/api/uri/expression/class-use/OrderByExpression.html#org.apache.olingo.odata2.api.uri.expression">OrderByExpression</a>
<div class="block">Represents a $orderby expression
 Used to define the <b>root</b> expression node in an $filter expression tree.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../../../org/apache/olingo/odata2/api/uri/expression/class-use/OrderExpression.html#org.apache.olingo.odata2.api.uri.expression">OrderExpression</a>
<div class="block">Represents a order expression in the expression tree
 <br>
 <br></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../../../org/apache/olingo/odata2/api/uri/expression/class-use/PropertyExpression.html#org.apache.olingo.odata2.api.uri.expression">PropertyExpression</a>
<div class="block">Represents a property expression in the expression tree
 <br>
 <br></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../../../org/apache/olingo/odata2/api/uri/expression/class-use/SortOrder.html#org.apache.olingo.odata2.api.uri.expression">SortOrder</a>
<div class="block">Enumeration describing all possible sort orders used in an $orderby expression</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../../../org/apache/olingo/odata2/api/uri/expression/class-use/UnaryExpression.html#org.apache.olingo.odata2.api.uri.expression">UnaryExpression</a>
<div class="block">Represents a unary expression node in the expression tree
 <br>
 <br></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="../../../../../../../org/apache/olingo/odata2/api/uri/expression/class-use/UnaryOperator.html#org.apache.olingo.odata2.api.uri.expression">UnaryOperator</a>
<div class="block">Enumerations for supported unary operators of the OData expression parser
 for OData version 2.0</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../../../org/apache/olingo/odata2/api/uri/expression/class-use/Visitable.html#org.apache.olingo.odata2.api.uri.expression">Visitable</a>
<div class="block">The interface <a href="../../../../../../../org/apache/olingo/odata2/api/uri/expression/Visitable.html" title="interface in org.apache.olingo.odata2.api.uri.expression"><code>Visitable</code></a> is part of the visitor pattern used to traverse
 the expression tree build from a $filter expression string or $orderby expression string.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList"><a name="org.apache.olingo.odata2.api.uri.info">
<!--   -->
</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/olingo/odata2/api/uri/expression/package-summary.html">org.apache.olingo.odata2.api.uri.expression</a> used by <a href="../../../../../../../org/apache/olingo/odata2/api/uri/info/package-summary.html">org.apache.olingo.odata2.api.uri.info</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/olingo/odata2/api/uri/expression/class-use/FilterExpression.html#org.apache.olingo.odata2.api.uri.info">FilterExpression</a>
<div class="block">Represents a $filter expression in the expression tree
 Used to define the <b>root</b> expression node in an $filter expression tree.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="../../../../../../../org/apache/olingo/odata2/api/uri/expression/class-use/OrderByExpression.html#org.apache.olingo.odata2.api.uri.info">OrderByExpression</a>
<div class="block">Represents a $orderby expression
 Used to define the <b>root</b> expression node in an $filter expression tree.</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/olingo/odata2/api/uri/expression/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; 2013-2017 <a href="http://www.apache.org/">The Apache Software Foundation</a>. All Rights Reserved.</small></p>
</body>
</html>
