<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>org.apache.calcite.adapter.mongodb Class Hierarchy (Apache Calcite API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../jquery/jquery-ui.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../jquery/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../../../jquery/jquery-3.3.1.js"></script>
<script type="text/javascript" src="../../../../../jquery/jquery-migrate-3.0.1.js"></script>
<script type="text/javascript" src="../../../../../jquery/jquery-ui.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="org.apache.calcite.adapter.mongodb Class Hierarchy (Apache Calcite API)";
        }
    }
    catch(err) {
    }
//-->
var pathtoroot = "../../../../../";
var useModuleDirectories = true;
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a id="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li>Class</li>
<li>Use</li>
<li class="navBarCell1Rev">Tree</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" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</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>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<a id="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>
<main role="main">
<div class="header">
<h1 class="title">Hierarchy For Package org.apache.calcite.adapter.mongodb</h1>
<span class="packageHierarchyLabel">Package Hierarchies:</span>
<ul class="horizontal">
<li><a href="../../../../../overview-tree.html">All Packages</a></li>
</ul>
</div>
<div class="contentContainer">
<section role="region">
<h2 title="Class Hierarchy">Class Hierarchy</h2>
<ul>
<li class="circle">java.lang.Object
<ul>
<li class="circle">org.apache.calcite.rel.<a href="../../rel/AbstractRelNode.html" title="class in org.apache.calcite.rel"><span class="typeNameLink">AbstractRelNode</span></a> (implements org.apache.calcite.rel.<a href="../../rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>)
<ul>
<li class="circle">org.apache.calcite.rel.<a href="../../rel/SingleRel.html" title="class in org.apache.calcite.rel"><span class="typeNameLink">SingleRel</span></a>
<ul>
<li class="circle">org.apache.calcite.rel.core.<a href="../../rel/core/Aggregate.html" title="class in org.apache.calcite.rel.core"><span class="typeNameLink">Aggregate</span></a>
<ul>
<li class="circle">org.apache.calcite.adapter.mongodb.<a href="MongoAggregate.html" title="class in org.apache.calcite.adapter.mongodb"><span class="typeNameLink">MongoAggregate</span></a> (implements org.apache.calcite.adapter.mongodb.<a href="MongoRel.html" title="interface in org.apache.calcite.adapter.mongodb">MongoRel</a>)</li>
</ul>
</li>
<li class="circle">org.apache.calcite.rel.convert.<a href="../../rel/convert/ConverterImpl.html" title="class in org.apache.calcite.rel.convert"><span class="typeNameLink">ConverterImpl</span></a> (implements org.apache.calcite.rel.convert.<a href="../../rel/convert/Converter.html" title="interface in org.apache.calcite.rel.convert">Converter</a>)
<ul>
<li class="circle">org.apache.calcite.adapter.mongodb.<a href="MongoToEnumerableConverter.html" title="class in org.apache.calcite.adapter.mongodb"><span class="typeNameLink">MongoToEnumerableConverter</span></a> (implements org.apache.calcite.adapter.enumerable.<a href="../enumerable/EnumerableRel.html" title="interface in org.apache.calcite.adapter.enumerable">EnumerableRel</a>)</li>
</ul>
</li>
<li class="circle">org.apache.calcite.rel.core.<a href="../../rel/core/Filter.html" title="class in org.apache.calcite.rel.core"><span class="typeNameLink">Filter</span></a>
<ul>
<li class="circle">org.apache.calcite.adapter.mongodb.<a href="MongoFilter.html" title="class in org.apache.calcite.adapter.mongodb"><span class="typeNameLink">MongoFilter</span></a> (implements org.apache.calcite.adapter.mongodb.<a href="MongoRel.html" title="interface in org.apache.calcite.adapter.mongodb">MongoRel</a>)</li>
</ul>
</li>
<li class="circle">org.apache.calcite.rel.core.<a href="../../rel/core/Project.html" title="class in org.apache.calcite.rel.core"><span class="typeNameLink">Project</span></a>
<ul>
<li class="circle">org.apache.calcite.adapter.mongodb.<a href="MongoProject.html" title="class in org.apache.calcite.adapter.mongodb"><span class="typeNameLink">MongoProject</span></a> (implements org.apache.calcite.adapter.mongodb.<a href="MongoRel.html" title="interface in org.apache.calcite.adapter.mongodb">MongoRel</a>)</li>
</ul>
</li>
<li class="circle">org.apache.calcite.rel.core.<a href="../../rel/core/Sort.html" title="class in org.apache.calcite.rel.core"><span class="typeNameLink">Sort</span></a>
<ul>
<li class="circle">org.apache.calcite.adapter.mongodb.<a href="MongoSort.html" title="class in org.apache.calcite.adapter.mongodb"><span class="typeNameLink">MongoSort</span></a> (implements org.apache.calcite.adapter.mongodb.<a href="MongoRel.html" title="interface in org.apache.calcite.adapter.mongodb">MongoRel</a>)</li>
</ul>
</li>
</ul>
</li>
<li class="circle">org.apache.calcite.rel.core.<a href="../../rel/core/TableScan.html" title="class in org.apache.calcite.rel.core"><span class="typeNameLink">TableScan</span></a>
<ul>
<li class="circle">org.apache.calcite.adapter.mongodb.<a href="MongoTableScan.html" title="class in org.apache.calcite.adapter.mongodb"><span class="typeNameLink">MongoTableScan</span></a> (implements org.apache.calcite.adapter.mongodb.<a href="MongoRel.html" title="interface in org.apache.calcite.adapter.mongodb">MongoRel</a>)</li>
</ul>
</li>
</ul>
</li>
<li class="circle">org.apache.calcite.schema.impl.<a href="../../schema/impl/AbstractSchema.html" title="class in org.apache.calcite.schema.impl"><span class="typeNameLink">AbstractSchema</span></a> (implements org.apache.calcite.schema.<a href="../../schema/Schema.html" title="interface in org.apache.calcite.schema">Schema</a>)
<ul>
<li class="circle">org.apache.calcite.adapter.mongodb.<a href="MongoSchema.html" title="class in org.apache.calcite.adapter.mongodb"><span class="typeNameLink">MongoSchema</span></a></li>
</ul>
</li>
<li class="circle">org.apache.calcite.schema.impl.<a href="../../schema/impl/AbstractTable.html" title="class in org.apache.calcite.schema.impl"><span class="typeNameLink">AbstractTable</span></a> (implements org.apache.calcite.schema.<a href="../../schema/Table.html" title="interface in org.apache.calcite.schema">Table</a>, org.apache.calcite.schema.<a href="../../schema/Wrapper.html" title="interface in org.apache.calcite.schema">Wrapper</a>)
<ul>
<li class="circle">org.apache.calcite.adapter.java.<a href="../java/AbstractQueryableTable.html" title="class in org.apache.calcite.adapter.java"><span class="typeNameLink">AbstractQueryableTable</span></a> (implements org.apache.calcite.schema.<a href="../../schema/QueryableTable.html" title="interface in org.apache.calcite.schema">QueryableTable</a>)
<ul>
<li class="circle">org.apache.calcite.adapter.mongodb.<a href="MongoTable.html" title="class in org.apache.calcite.adapter.mongodb"><span class="typeNameLink">MongoTable</span></a> (implements org.apache.calcite.schema.<a href="../../schema/TranslatableTable.html" title="interface in org.apache.calcite.schema">TranslatableTable</a>)</li>
</ul>
</li>
</ul>
</li>
<li class="circle">org.apache.calcite.linq4j.<a href="../../linq4j/DefaultEnumerable.html" title="class in org.apache.calcite.linq4j"><span class="typeNameLink">DefaultEnumerable</span></a>&lt;T&gt; (implements org.apache.calcite.linq4j.<a href="../../linq4j/OrderedEnumerable.html" title="interface in org.apache.calcite.linq4j">OrderedEnumerable</a>&lt;T&gt;)
<ul>
<li class="circle">org.apache.calcite.linq4j.<a href="../../linq4j/DefaultQueryable.html" title="class in org.apache.calcite.linq4j"><span class="typeNameLink">DefaultQueryable</span></a>&lt;T&gt; (implements org.apache.calcite.linq4j.<a href="../../linq4j/OrderedQueryable.html" title="interface in org.apache.calcite.linq4j">OrderedQueryable</a>&lt;T&gt;, org.apache.calcite.linq4j.<a href="../../linq4j/Queryable.html" title="interface in org.apache.calcite.linq4j">Queryable</a>&lt;T&gt;)
<ul>
<li class="circle">org.apache.calcite.linq4j.<a href="../../linq4j/AbstractQueryable.html" title="class in org.apache.calcite.linq4j"><span class="typeNameLink">AbstractQueryable</span></a>&lt;T&gt; (implements org.apache.calcite.linq4j.<a href="../../linq4j/Queryable.html" title="interface in org.apache.calcite.linq4j">Queryable</a>&lt;T&gt;)
<ul>
<li class="circle">org.apache.calcite.schema.impl.<a href="../../schema/impl/AbstractTableQueryable.html" title="class in org.apache.calcite.schema.impl"><span class="typeNameLink">AbstractTableQueryable</span></a>&lt;T&gt;
<ul>
<li class="circle">org.apache.calcite.adapter.mongodb.<a href="MongoTable.MongoQueryable.html" title="class in org.apache.calcite.adapter.mongodb"><span class="typeNameLink">MongoTable.MongoQueryable</span></a>&lt;T&gt;</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li class="circle">org.apache.calcite.adapter.mongodb.<a href="MongoEnumerator.html" title="class in org.apache.calcite.adapter.mongodb"><span class="typeNameLink">MongoEnumerator</span></a> (implements org.apache.calcite.linq4j.<a href="../../linq4j/Enumerator.html" title="interface in org.apache.calcite.linq4j">Enumerator</a>&lt;T&gt;)</li>
<li class="circle">org.apache.calcite.adapter.mongodb.<a href="MongoFilter.Translator.html" title="class in org.apache.calcite.adapter.mongodb"><span class="typeNameLink">MongoFilter.Translator</span></a></li>
<li class="circle">org.apache.calcite.adapter.mongodb.<a href="MongoRel.Implementor.html" title="class in org.apache.calcite.adapter.mongodb"><span class="typeNameLink">MongoRel.Implementor</span></a></li>
<li class="circle">org.apache.calcite.adapter.mongodb.<a href="MongoRules.html" title="class in org.apache.calcite.adapter.mongodb"><span class="typeNameLink">MongoRules</span></a></li>
<li class="circle">org.apache.calcite.adapter.mongodb.<a href="MongoSchemaFactory.html" title="class in org.apache.calcite.adapter.mongodb"><span class="typeNameLink">MongoSchemaFactory</span></a> (implements org.apache.calcite.schema.<a href="../../schema/SchemaFactory.html" title="interface in org.apache.calcite.schema">SchemaFactory</a>)</li>
<li class="circle">org.apache.calcite.plan.<a href="../../plan/RelOptRule.html" title="class in org.apache.calcite.plan"><span class="typeNameLink">RelOptRule</span></a>
<ul>
<li class="circle">org.apache.calcite.rel.convert.<a href="../../rel/convert/ConverterRule.html" title="class in org.apache.calcite.rel.convert"><span class="typeNameLink">ConverterRule</span></a>
<ul>
<li class="circle">org.apache.calcite.adapter.mongodb.<a href="MongoRules.MongoConverterRule.html" title="class in org.apache.calcite.adapter.mongodb"><span class="typeNameLink">MongoRules.MongoConverterRule</span></a>
<ul>
<li class="circle">org.apache.calcite.adapter.mongodb.<a href="MongoRules.MongoAggregateRule.html" title="class in org.apache.calcite.adapter.mongodb"><span class="typeNameLink">MongoRules.MongoAggregateRule</span></a></li>
<li class="circle">org.apache.calcite.adapter.mongodb.<a href="MongoRules.MongoFilterRule.html" title="class in org.apache.calcite.adapter.mongodb"><span class="typeNameLink">MongoRules.MongoFilterRule</span></a></li>
<li class="circle">org.apache.calcite.adapter.mongodb.<a href="MongoRules.MongoProjectRule.html" title="class in org.apache.calcite.adapter.mongodb"><span class="typeNameLink">MongoRules.MongoProjectRule</span></a></li>
<li class="circle">org.apache.calcite.adapter.mongodb.<a href="MongoRules.MongoSortRule.html" title="class in org.apache.calcite.adapter.mongodb"><span class="typeNameLink">MongoRules.MongoSortRule</span></a></li>
</ul>
</li>
<li class="circle">org.apache.calcite.adapter.mongodb.<a href="MongoToEnumerableConverterRule.html" title="class in org.apache.calcite.adapter.mongodb"><span class="typeNameLink">MongoToEnumerableConverterRule</span></a></li>
</ul>
</li>
</ul>
</li>
<li class="circle">org.apache.calcite.rex.<a href="../../rex/RexVisitorImpl.html" title="class in org.apache.calcite.rex"><span class="typeNameLink">RexVisitorImpl</span></a>&lt;R&gt; (implements org.apache.calcite.rex.<a href="../../rex/RexVisitor.html" title="interface in org.apache.calcite.rex">RexVisitor</a>&lt;R&gt;)
<ul>
<li class="circle">org.apache.calcite.adapter.mongodb.<a href="MongoRules.RexToMongoTranslator.html" title="class in org.apache.calcite.adapter.mongodb"><span class="typeNameLink">MongoRules.RexToMongoTranslator</span></a></li>
</ul>
</li>
</ul>
</li>
</ul>
</section>
<section role="region">
<h2 title="Interface Hierarchy">Interface Hierarchy</h2>
<ul>
<li class="circle">java.lang.Cloneable
<ul>
<li class="circle">org.apache.calcite.rel.<a href="../../rel/RelNode.html" title="interface in org.apache.calcite.rel"><span class="typeNameLink">RelNode</span></a> (also extends org.apache.calcite.plan.<a href="../../plan/RelOptNode.html" title="interface in org.apache.calcite.plan">RelOptNode</a>)
<ul>
<li class="circle">org.apache.calcite.adapter.mongodb.<a href="MongoRel.html" title="interface in org.apache.calcite.adapter.mongodb"><span class="typeNameLink">MongoRel</span></a></li>
</ul>
</li>
</ul>
</li>
<li class="circle">org.apache.calcite.plan.<a href="../../plan/RelOptNode.html" title="interface in org.apache.calcite.plan"><span class="typeNameLink">RelOptNode</span></a>
<ul>
<li class="circle">org.apache.calcite.rel.<a href="../../rel/RelNode.html" title="interface in org.apache.calcite.rel"><span class="typeNameLink">RelNode</span></a> (also extends java.lang.Cloneable)
<ul>
<li class="circle">org.apache.calcite.adapter.mongodb.<a href="MongoRel.html" title="interface in org.apache.calcite.adapter.mongodb"><span class="typeNameLink">MongoRel</span></a></li>
</ul>
</li>
</ul>
</li>
</ul>
</section>
<section role="region">
<h2 title="Enum Hierarchy">Enum Hierarchy</h2>
<ul>
<li class="circle">java.lang.Object
<ul>
<li class="circle">java.lang.Enum&lt;E&gt; (implements java.lang.Comparable&lt;T&gt;, java.io.Serializable)
<ul>
<li class="circle">org.apache.calcite.adapter.mongodb.<a href="MongoMethod.html" title="enum in org.apache.calcite.adapter.mongodb"><span class="typeNameLink">MongoMethod</span></a></li>
</ul>
</li>
</ul>
</li>
</ul>
</section>
</div>
</main>
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li>Class</li>
<li>Use</li>
<li class="navBarCell1Rev">Tree</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" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses.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>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<a id="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
<p class="legalCopy"><small>Copyright &#169; 2012&#x2013;2019 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</footer>
</body>
</html>
