blob: 74da2fa3506feb3ed3d50f9e08d6d804bdb6ae99 [file] [log] [blame]
<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (11.0.10) on Fri Feb 26 09:50:23 CST 2021 -->
<title>ArrayTrie (Jetty :: Project 9.4.38.v20210224 API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2021-02-26">
<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.5.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="ArrayTrie (Jetty :: Project 9.4.38.v20210224 API)";
}
}
catch(err) {
}
//-->
var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
var pathtoroot = "../../../../";
var useModuleDirectories = false;
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="navBarCell1Rev">Class</li>
<li><a href="class-use/ArrayTrie.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" 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>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a 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>
<!-- ======== START OF CLASS DATA ======== -->
<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.eclipse.jetty.util</a></div>
<h2 title="Class ArrayTrie" class="title">Class ArrayTrie&lt;V&gt;</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li><a href="AbstractTrie.html" title="class in org.eclipse.jetty.util">org.eclipse.jetty.util.AbstractTrie</a>&lt;V&gt;</li>
<li>
<ul class="inheritance">
<li>org.eclipse.jetty.util.ArrayTrie&lt;V&gt;</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>V</code> - the entry type</dd>
</dl>
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><code><a href="Trie.html" title="interface in org.eclipse.jetty.util">Trie</a>&lt;V&gt;</code></dd>
</dl>
<hr>
<pre>public class <span class="typeNameLabel">ArrayTrie&lt;V&gt;</span>
extends <a href="AbstractTrie.html" title="class in org.eclipse.jetty.util">AbstractTrie</a>&lt;V&gt;</pre>
<div class="block"><p>A Trie String lookup data structure using a fixed size array.</p>
<p>This implementation is always case insensitive and is optimal for
a small number of fixed strings with few special characters. The
Trie is stored in an array of lookup tables, each indexed by the
next character of the key. Frequently used characters are directly
indexed in each lookup table, whilst infrequently used characters
must use a big character table.
</p>
<p>This Trie is very space efficient if the key characters are
from ' ', '+', '-', ':', ';', '.', 'A' to 'Z' or 'a' to 'z'.
Other ISO-8859-1 characters can be used by the key, but less space
efficiently.
</p>
<p>This Trie is not Threadsafe and contains no mutual exclusion
or deliberate memory barriers. It is intended for an ArrayTrie to be
built by a single thread and then used concurrently by multiple threads
and not mutated during that access. If concurrent mutations of the
Trie is required external locks need to be applied.
</p></div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Constructor</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E()">ArrayTrie</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(int)">ArrayTrie</a></span>&#8203;(int&nbsp;capacity)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- ========== METHOD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#clear()">clear</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code><a href="ArrayTrie.html" title="type parameter in ArrayTrie">V</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#get(java.lang.String,int,int)">get</a></span>&#8203;(java.lang.String&nbsp;s,
int&nbsp;offset,
int&nbsp;len)</code></th>
<td class="colLast">
<div class="block">Get an exact match from a String key</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code><a href="ArrayTrie.html" title="type parameter in ArrayTrie">V</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#get(java.nio.ByteBuffer,int,int)">get</a></span>&#8203;(java.nio.ByteBuffer&nbsp;b,
int&nbsp;offset,
int&nbsp;len)</code></th>
<td class="colLast">
<div class="block">Get an exact match from a segment of a ByteBuufer as key</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code><a href="ArrayTrie.html" title="type parameter in ArrayTrie">V</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getBest(byte%5B%5D,int,int)">getBest</a></span>&#8203;(byte[]&nbsp;b,
int&nbsp;offset,
int&nbsp;len)</code></th>
<td class="colLast">
<div class="block">Get the best match from key in a byte array.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code><a href="ArrayTrie.html" title="type parameter in ArrayTrie">V</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getBest(java.lang.String,int,int)">getBest</a></span>&#8203;(java.lang.String&nbsp;s,
int&nbsp;offset,
int&nbsp;len)</code></th>
<td class="colLast">
<div class="block">Get the best match from key in a String.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="ArrayTrie.html" title="type parameter in ArrayTrie">V</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getBest(java.nio.ByteBuffer,int,int)">getBest</a></span>&#8203;(java.nio.ByteBuffer&nbsp;b,
int&nbsp;offset,
int&nbsp;len)</code></th>
<td class="colLast">
<div class="block">Get the best match from key in a byte buffer.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isFull()">isFull</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>java.util.Set&lt;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#keySet()">keySet</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#put(java.lang.String,V)">put</a></span>&#8203;(java.lang.String&nbsp;s,
<a href="ArrayTrie.html" title="type parameter in ArrayTrie">V</a>&nbsp;v)</code></th>
<td class="colLast">
<div class="block">Put an entry into the Trie</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toString()">toString</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.eclipse.jetty.util.AbstractTrie">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;org.eclipse.jetty.util.<a href="AbstractTrie.html" title="class in org.eclipse.jetty.util">AbstractTrie</a></h3>
<code><a href="AbstractTrie.html#get(java.lang.String)">get</a>, <a href="AbstractTrie.html#get(java.nio.ByteBuffer)">get</a>, <a href="AbstractTrie.html#getBest(java.lang.String)">getBest</a>, <a href="AbstractTrie.html#isCaseInsensitive()">isCaseInsensitive</a>, <a href="AbstractTrie.html#put(V)">put</a>, <a href="AbstractTrie.html#remove(java.lang.String)">remove</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait</code></li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a id="&lt;init&gt;()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ArrayTrie</h4>
<pre>public&nbsp;ArrayTrie()</pre>
</li>
</ul>
<a id="&lt;init&gt;(int)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>ArrayTrie</h4>
<pre>public&nbsp;ArrayTrie&#8203;(int&nbsp;capacity)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>capacity</code> - The capacity of the trie, which at the worst case
is the total number of characters of all keys stored in the Trie.
The capacity needed is dependent of the shared prefixes of the keys.
For example, a capacity of 6 nodes is required to store keys "foo"
and "bar", but a capacity of only 4 is required to
store "bar" and "bat".</dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
<!-- ============ METHOD DETAIL ========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a id="clear()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clear</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;clear()</pre>
</li>
</ul>
<a id="put(java.lang.String,java.lang.Object)">
<!-- -->
</a><a id="put(java.lang.String,V)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>put</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;put&#8203;(java.lang.String&nbsp;s,
<a href="ArrayTrie.html" title="type parameter in ArrayTrie">V</a>&nbsp;v)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Trie.html#put(java.lang.String,V)">Trie</a></code></span></div>
<div class="block">Put an entry into the Trie</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>s</code> - The key for the entry</dd>
<dd><code>v</code> - The value of the entry</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>True if the Trie had capacity to add the field.</dd>
</dl>
</li>
</ul>
<a id="get(java.lang.String,int,int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>get</h4>
<pre class="methodSignature">public&nbsp;<a href="ArrayTrie.html" title="type parameter in ArrayTrie">V</a>&nbsp;get&#8203;(java.lang.String&nbsp;s,
int&nbsp;offset,
int&nbsp;len)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Trie.html#get(java.lang.String,int,int)">Trie</a></code></span></div>
<div class="block">Get an exact match from a String key</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>s</code> - The key</dd>
<dd><code>offset</code> - The offset within the string of the key</dd>
<dd><code>len</code> - the length of the key</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the value for the string / offset / length</dd>
</dl>
</li>
</ul>
<a id="get(java.nio.ByteBuffer,int,int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>get</h4>
<pre class="methodSignature">public&nbsp;<a href="ArrayTrie.html" title="type parameter in ArrayTrie">V</a>&nbsp;get&#8203;(java.nio.ByteBuffer&nbsp;b,
int&nbsp;offset,
int&nbsp;len)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Trie.html#get(java.nio.ByteBuffer,int,int)">Trie</a></code></span></div>
<div class="block">Get an exact match from a segment of a ByteBuufer as key</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>b</code> - The buffer</dd>
<dd><code>offset</code> - The offset within the buffer of the key</dd>
<dd><code>len</code> - the length of the key</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The value or null if not found</dd>
</dl>
</li>
</ul>
<a id="getBest(byte[],int,int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getBest</h4>
<pre class="methodSignature">public&nbsp;<a href="ArrayTrie.html" title="type parameter in ArrayTrie">V</a>&nbsp;getBest&#8203;(byte[]&nbsp;b,
int&nbsp;offset,
int&nbsp;len)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Trie.html#getBest(byte%5B%5D,int,int)">Trie</a></code></span></div>
<div class="block">Get the best match from key in a byte array.
The key is assumed to by ISO_8859_1 characters.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Trie.html#getBest(byte%5B%5D,int,int)">getBest</a></code>&nbsp;in interface&nbsp;<code><a href="Trie.html" title="interface in org.eclipse.jetty.util">Trie</a>&lt;<a href="ArrayTrie.html" title="type parameter in ArrayTrie">V</a>&gt;</code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="AbstractTrie.html#getBest(byte%5B%5D,int,int)">getBest</a></code>&nbsp;in class&nbsp;<code><a href="AbstractTrie.html" title="class in org.eclipse.jetty.util">AbstractTrie</a>&lt;<a href="ArrayTrie.html" title="type parameter in ArrayTrie">V</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>b</code> - The buffer</dd>
<dd><code>offset</code> - The offset within the array of the key</dd>
<dd><code>len</code> - the length of the key</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The value or null if not found</dd>
</dl>
</li>
</ul>
<a id="getBest(java.nio.ByteBuffer,int,int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getBest</h4>
<pre class="methodSignature">public&nbsp;<a href="ArrayTrie.html" title="type parameter in ArrayTrie">V</a>&nbsp;getBest&#8203;(java.nio.ByteBuffer&nbsp;b,
int&nbsp;offset,
int&nbsp;len)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Trie.html#getBest(java.nio.ByteBuffer,int,int)">Trie</a></code></span></div>
<div class="block">Get the best match from key in a byte buffer.
The key is assumed to by ISO_8859_1 characters.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>b</code> - The buffer</dd>
<dd><code>offset</code> - The offset within the buffer of the key</dd>
<dd><code>len</code> - the length of the key</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The value or null if not found</dd>
</dl>
</li>
</ul>
<a id="getBest(java.lang.String,int,int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getBest</h4>
<pre class="methodSignature">public&nbsp;<a href="ArrayTrie.html" title="type parameter in ArrayTrie">V</a>&nbsp;getBest&#8203;(java.lang.String&nbsp;s,
int&nbsp;offset,
int&nbsp;len)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Trie.html#getBest(java.lang.String,int,int)">Trie</a></code></span></div>
<div class="block">Get the best match from key in a String.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>s</code> - The string</dd>
<dd><code>offset</code> - The offset within the string of the key</dd>
<dd><code>len</code> - the length of the key</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The value or null if not found</dd>
</dl>
</li>
</ul>
<a id="toString()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toString</h4>
<pre class="methodSignature">public&nbsp;java.lang.String&nbsp;toString()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>toString</code>&nbsp;in class&nbsp;<code>java.lang.Object</code></dd>
</dl>
</li>
</ul>
<a id="keySet()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>keySet</h4>
<pre class="methodSignature">public&nbsp;java.util.Set&lt;java.lang.String&gt;&nbsp;keySet()</pre>
</li>
</ul>
<a id="isFull()">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>isFull</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isFull()</pre>
</li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
</div>
</main>
<!-- ========= END OF CLASS DATA ========= -->
<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="navBarCell1Rev">Class</li>
<li><a href="class-use/ArrayTrie.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" 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>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
<p class="legalCopy"><small>Copyright &#169; 1995&#x2013;2021 <a href="https://webtide.com">Webtide</a>. All rights reserved.</small></p>
</footer>
</body>
</html>