Modified: websites/staging/lucy/trunk/content/docs/c/lucy_BlobType.html ============================================================================== --- websites/staging/lucy/trunk/content/docs/c/lucy_BlobType.html (original) +++ websites/staging/lucy/trunk/content/docs/c/lucy_BlobType.html Tue Dec 2 17:54:11 2014 @@ -1,174 +1,241 @@ <!DOCTYPE html> <html> <head> +<meta charset="utf-8"> +<!-- +*********************************************** + +!!!! DO NOT EDIT !!!! + +This file was auto-generated by cfc. + +*********************************************** + +Licensed to the Apache Software Foundation (ASF) under one or more +contributor license agreements. See the NOTICE file distributed with +this work for additional information regarding copyright ownership. +The ASF licenses this file to You under the Apache License, Version 2.0 +(the "License"); you may not use this file except in compliance with +the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +--> <meta name="viewport" content="width=device-width" /> +<title>Lucy::Plan::BlobType â C API Documentation</title> <style type="text/css"> body { - font-family: sans-serif; - font-size: 0.85em; - max-width: 640px; + max-width: 48em; + font: 0.85em/1.4 sans-serif; +} +a { + color: #23b; +} +table { + border-collapse: collapse; +} +td { + padding: 0; +} +td.label { + padding-right: 2em; + font-weight: bold; } dt { font-weight: bold; } pre { - border: 1px solid #000; + border: 1px solid #ccc; padding: 0.2em 0.4em; background: #f6f6f6; - font-size: 1.2em; + font-size: 0.92em; +} +pre a { + text-decoration: none; } -code { +pre, code { font-family: "Consolas", "Menlo", monospace; } +span.prefix, span.comment { + color: #888; +} </style> </head> <body> <h1>Lucy::Plan::BlobType</h1> +<table> +<tr> +<td class="label">parcel</td> +<td><a href="lucy.html">Lucy</a></td> +</tr> +<tr> +<td class="label">class name</td> +<td>Lucy::Plan::BlobType</td> +</tr> +<tr> +<td class="label">class nickname</td> +<td>BlobType</td> +</tr> +<tr> +<td class="label">class variable</td> +<td><code>LUCY_BLOBTYPE</code></td> +</tr> +<tr> +<td class="label">struct symbol</td> +<td><code>lucy_BlobType</code></td> +</tr> +</table> <h2>Name</h2> -<p>Lucy::Plan::BlobType - Default behaviors for binary fields.</p> +<p>Lucy::Plan::BlobType â Default behaviors for binary fields.</p> <h2>Description</h2> <p>BlobType is an implementation of FieldType tuned for use with fields containing binary data, which cannot be indexed or searched -- only stored.</p> <h2>Functions</h2> <dl> -<dt>init</dt> +<dt id="func_init">init</dt> <dd> -<pre><code>lucy_BlobType* -<strong>lucy_BlobType_init</strong>( - lucy_BlobType* <strong>self</strong>, +<pre><code><span class="prefix">lucy_</span>BlobType* +<span class="prefix">lucy_</span><strong>BlobType_init</strong>( + <span class="prefix">lucy_</span>BlobType* <strong>self</strong>, bool <strong>stored</strong> ); </code></pre> <dl> -<dt><emph>stored</emph></dt> +<dt>stored</dt> <dd><p>boolean indicating whether the field should be stored.</p> </dd> </dl> </dd> -<dt>new</dt> +<dt id="func_new">new</dt> <dd> -<pre><code>lucy_BlobType* // incremented -<strong>lucy_BlobType_new</strong>( +<pre><code><span class="prefix">lucy_</span>BlobType* <span class="comment">// incremented</span> +<span class="prefix">lucy_</span><strong>BlobType_new</strong>( bool <strong>stored</strong> ); </code></pre> </dd> </dl> <h2>Methods</h2> -<h3>Methods inherited from Lucy::Plan::FieldType</h3><dl> -<dt>Set_Boost</dt> +<h3>Methods inherited from Lucy::Plan::FieldType</h3> +<dl> +<dt id="func_Set_Boost">Set_Boost</dt> <dd> <pre><code>void -<strong>LUCY_FType_Set_Boost</strong>( - lucy_FieldType* <strong>self</strong>, +<span class="prefix">LUCY_</span><strong>FType_Set_Boost</strong>( + <span class="prefix">lucy_</span>FieldType* <strong>self</strong>, float <strong>boost</strong> ); </code></pre> <p>Setter for <code>boost</code>.</p> </dd> -<dt>Get_Boost</dt> +<dt id="func_Get_Boost">Get_Boost</dt> <dd> <pre><code>float -<strong>LUCY_FType_Get_Boost</strong>( - lucy_FieldType* <strong>self</strong> +<span class="prefix">LUCY_</span><strong>FType_Get_Boost</strong>( + <span class="prefix">lucy_</span>FieldType* <strong>self</strong> ); </code></pre> <p>Accessor for <code>boost</code>.</p> </dd> -<dt>Set_Indexed</dt> +<dt id="func_Set_Indexed">Set_Indexed</dt> <dd> <pre><code>void -<strong>LUCY_FType_Set_Indexed</strong>( - lucy_FieldType* <strong>self</strong>, +<span class="prefix">LUCY_</span><strong>FType_Set_Indexed</strong>( + <span class="prefix">lucy_</span>FieldType* <strong>self</strong>, bool <strong>indexed</strong> ); </code></pre> <p>Setter for <code>indexed</code>.</p> </dd> -<dt>Indexed</dt> +<dt id="func_Indexed">Indexed</dt> <dd> <pre><code>bool -<strong>LUCY_FType_Indexed</strong>( - lucy_FieldType* <strong>self</strong> +<span class="prefix">LUCY_</span><strong>FType_Indexed</strong>( + <span class="prefix">lucy_</span>FieldType* <strong>self</strong> ); </code></pre> <p>Accessor for <code>indexed</code>.</p> </dd> -<dt>Set_Stored</dt> +<dt id="func_Set_Stored">Set_Stored</dt> <dd> <pre><code>void -<strong>LUCY_FType_Set_Stored</strong>( - lucy_FieldType* <strong>self</strong>, +<span class="prefix">LUCY_</span><strong>FType_Set_Stored</strong>( + <span class="prefix">lucy_</span>FieldType* <strong>self</strong>, bool <strong>stored</strong> ); </code></pre> <p>Setter for <code>stored</code>.</p> </dd> -<dt>Stored</dt> +<dt id="func_Stored">Stored</dt> <dd> <pre><code>bool -<strong>LUCY_FType_Stored</strong>( - lucy_FieldType* <strong>self</strong> +<span class="prefix">LUCY_</span><strong>FType_Stored</strong>( + <span class="prefix">lucy_</span>FieldType* <strong>self</strong> ); </code></pre> <p>Accessor for <code>stored</code>.</p> </dd> -<dt>Set_Sortable</dt> +<dt id="func_Set_Sortable">Set_Sortable</dt> <dd> <pre><code>void -<strong>LUCY_FType_Set_Sortable</strong>( - lucy_FieldType* <strong>self</strong>, +<span class="prefix">LUCY_</span><strong>FType_Set_Sortable</strong>( + <span class="prefix">lucy_</span>FieldType* <strong>self</strong>, bool <strong>sortable</strong> ); </code></pre> <p>Setter for <code>sortable</code>.</p> </dd> -<dt>Sortable</dt> +<dt id="func_Sortable">Sortable</dt> <dd> <pre><code>bool -<strong>LUCY_FType_Sortable</strong>( - lucy_FieldType* <strong>self</strong> +<span class="prefix">LUCY_</span><strong>FType_Sortable</strong>( + <span class="prefix">lucy_</span>FieldType* <strong>self</strong> ); </code></pre> <p>Accessor for <code>sortable</code>.</p> </dd> -<dt>Binary</dt> +<dt id="func_Binary">Binary</dt> <dd> <pre><code>bool -<strong>LUCY_FType_Binary</strong>( - lucy_FieldType* <strong>self</strong> +<span class="prefix">LUCY_</span><strong>FType_Binary</strong>( + <span class="prefix">lucy_</span>FieldType* <strong>self</strong> ); </code></pre> <p>Indicate whether the field contains binary data.</p> </dd> -<dt>Compare_Values</dt> +<dt id="func_Compare_Values">Compare_Values</dt> <dd> <pre><code>int32_t -<strong>LUCY_FType_Compare_Values</strong>( - lucy_FieldType* <strong>self</strong>, - <a href="cfish_Obj.html">cfish_Obj*</a> <strong>a</strong>, - <a href="cfish_Obj.html">cfish_Obj*</a> <strong>b</strong> +<span class="prefix">LUCY_</span><strong>FType_Compare_Values</strong>( + <span class="prefix">lucy_</span>FieldType* <strong>self</strong>, + <span class="prefix">cfish_</span><a href="cfish_Obj.html">Obj*</a> <strong>a</strong>, + <span class="prefix">cfish_</span><a href="cfish_Obj.html">Obj*</a> <strong>b</strong> ); </code></pre> <p>Compare two values for the field. The default implementation -dispatches to the Compare_To() method of argument <code>a</code>.</p> +dispatches to the <a href="lucy_FieldType.html#func_Compare_To">Compare_To()</a> method of argument <code>a</code>.</p> <p><strong>Returns:</strong> a negative number if a is "less than" b, 0 if they are "equal", and a positive number if a is "greater than" b.</p> </dd> -<dt>Dump</dt> +<dt id="func_Dump">Dump <span class="comment">(abstract)</span></dt> <dd> -<pre><code><a href="cfish_Obj.html">cfish_Obj*</a> // incremented -<strong>LUCY_FType_Dump</strong>( - lucy_FieldType* <strong>self</strong> +<pre><code><span class="prefix">cfish_</span><a href="cfish_Obj.html">Obj*</a> <span class="comment">// incremented</span> +<span class="prefix">LUCY_</span><strong>FType_Dump</strong>( + <span class="prefix">lucy_</span>FieldType* <strong>self</strong> ); </code></pre> </dd> -<dt>Load</dt> +<dt id="func_Load">Load <span class="comment">(abstract)</span></dt> <dd> -<pre><code><a href="cfish_Obj.html">cfish_Obj*</a> // incremented -<strong>LUCY_FType_Load</strong>( - lucy_FieldType* <strong>self</strong>, - <a href="cfish_Obj.html">cfish_Obj*</a> <strong>dump</strong> +<pre><code><span class="prefix">cfish_</span><a href="cfish_Obj.html">Obj*</a> <span class="comment">// incremented</span> +<span class="prefix">LUCY_</span><strong>FType_Load</strong>( + <span class="prefix">lucy_</span>FieldType* <strong>self</strong>, + <span class="prefix">cfish_</span><a href="cfish_Obj.html">Obj*</a> <strong>dump</strong> ); </code></pre> </dd>
Modified: websites/staging/lucy/trunk/content/docs/c/lucy_CaseFolder.html ============================================================================== --- websites/staging/lucy/trunk/content/docs/c/lucy_CaseFolder.html (original) +++ websites/staging/lucy/trunk/content/docs/c/lucy_CaseFolder.html Tue Dec 2 17:54:11 2014 @@ -1,31 +1,97 @@ <!DOCTYPE html> <html> <head> +<meta charset="utf-8"> +<!-- +*********************************************** + +!!!! DO NOT EDIT !!!! + +This file was auto-generated by cfc. + +*********************************************** + +Licensed to the Apache Software Foundation (ASF) under one or more +contributor license agreements. See the NOTICE file distributed with +this work for additional information regarding copyright ownership. +The ASF licenses this file to You under the Apache License, Version 2.0 +(the "License"); you may not use this file except in compliance with +the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +--> <meta name="viewport" content="width=device-width" /> +<title>Lucy::Analysis::CaseFolder â C API Documentation</title> <style type="text/css"> body { - font-family: sans-serif; - font-size: 0.85em; - max-width: 640px; + max-width: 48em; + font: 0.85em/1.4 sans-serif; +} +a { + color: #23b; +} +table { + border-collapse: collapse; +} +td { + padding: 0; +} +td.label { + padding-right: 2em; + font-weight: bold; } dt { font-weight: bold; } pre { - border: 1px solid #000; + border: 1px solid #ccc; padding: 0.2em 0.4em; background: #f6f6f6; - font-size: 1.2em; + font-size: 0.92em; +} +pre a { + text-decoration: none; } -code { +pre, code { font-family: "Consolas", "Menlo", monospace; } +span.prefix, span.comment { + color: #888; +} </style> </head> <body> <h1>Lucy::Analysis::CaseFolder</h1> +<table> +<tr> +<td class="label">parcel</td> +<td><a href="lucy.html">Lucy</a></td> +</tr> +<tr> +<td class="label">class name</td> +<td>Lucy::Analysis::CaseFolder</td> +</tr> +<tr> +<td class="label">class nickname</td> +<td>CaseFolder</td> +</tr> +<tr> +<td class="label">class variable</td> +<td><code>LUCY_CASEFOLDER</code></td> +</tr> +<tr> +<td class="label">struct symbol</td> +<td><code>lucy_CaseFolder</code></td> +</tr> +</table> <h2>Name</h2> -<p>Lucy::Analysis::CaseFolder - Normalize case, facilitating case-insensitive search.</p> +<p>Lucy::Analysis::CaseFolder â Normalize case, facilitating case-insensitive search.</p> <h2>Description</h2> <p>CaseFolder is DEPRECATED. Use <a href="lucy_Normalizer.html">Normalizer</a> instead.</p> @@ -33,67 +99,68 @@ instead.</p> searches will be case-insensitive.</p> <h2>Functions</h2> <dl> -<dt>init</dt> +<dt id="func_init">init</dt> <dd> -<pre><code>lucy_CaseFolder* -<strong>lucy_CaseFolder_init</strong>( - lucy_CaseFolder* <strong>self</strong> +<pre><code><span class="prefix">lucy_</span>CaseFolder* +<span class="prefix">lucy_</span><strong>CaseFolder_init</strong>( + <span class="prefix">lucy_</span>CaseFolder* <strong>self</strong> ); </code></pre> <p>Constructor. Takes no arguments.</p> </dd> </dl> <h2>Methods</h2> -<h3>Methods inherited from Lucy::Analysis::Analyzer</h3><dl> -<dt>Transform</dt> +<h3>Methods inherited from Lucy::Analysis::Analyzer</h3> +<dl> +<dt id="func_Transform">Transform <span class="comment">(abstract)</span></dt> <dd> -<pre><code><a href="lucy_Inversion.html">lucy_Inversion*</a> // incremented -<strong>LUCY_Analyzer_Transform</strong>( - lucy_Analyzer* <strong>self</strong>, - <a href="lucy_Inversion.html">lucy_Inversion*</a> <strong>inversion</strong> +<pre><code><span class="prefix">lucy_</span><a href="lucy_Inversion.html">Inversion*</a> <span class="comment">// incremented</span> +<span class="prefix">LUCY_</span><strong>Analyzer_Transform</strong>( + <span class="prefix">lucy_</span>Analyzer* <strong>self</strong>, + <span class="prefix">lucy_</span><a href="lucy_Inversion.html">Inversion*</a> <strong>inversion</strong> ); </code></pre> <p>Take a single <a href="lucy_Inversion.html">Inversion</a> as input and returns an Inversion, either the same one (presumably transformed in some way), or a new one.</p> </dd> -<dt>Transform_Text</dt> +<dt id="func_Transform_Text">Transform_Text</dt> <dd> -<pre><code><a href="lucy_Inversion.html">lucy_Inversion*</a> // incremented -<strong>LUCY_Analyzer_Transform_Text</strong>( - lucy_Analyzer* <strong>self</strong>, - <a href="cfish_String.html">cfish_String*</a> <strong>text</strong> +<pre><code><span class="prefix">lucy_</span><a href="lucy_Inversion.html">Inversion*</a> <span class="comment">// incremented</span> +<span class="prefix">LUCY_</span><strong>Analyzer_Transform_Text</strong>( + <span class="prefix">lucy_</span>Analyzer* <strong>self</strong>, + <span class="prefix">cfish_</span><a href="cfish_String.html">String*</a> <strong>text</strong> ); </code></pre> <p>Kick off an analysis chain, creating an Inversion from string input. The default implementation simply creates an initial Inversion with a -single Token, then calls Transform(), but occasionally subclasses will +single Token, then calls <a href="lucy_Analyzer.html#func_Transform">Transform()</a>, but occasionally subclasses will provide an optimized implementation which minimizes string copies.</p> </dd> -<dt>Split</dt> +<dt id="func_Split">Split</dt> <dd> -<pre><code><a href="cfish_VArray.html">cfish_VArray*</a> // incremented -<strong>LUCY_Analyzer_Split</strong>( - lucy_Analyzer* <strong>self</strong>, - <a href="cfish_String.html">cfish_String*</a> <strong>text</strong> +<pre><code><span class="prefix">cfish_</span><a href="cfish_VArray.html">VArray*</a> <span class="comment">// incremented</span> +<span class="prefix">LUCY_</span><strong>Analyzer_Split</strong>( + <span class="prefix">lucy_</span>Analyzer* <strong>self</strong>, + <span class="prefix">cfish_</span><a href="cfish_String.html">String*</a> <strong>text</strong> ); </code></pre> <p>Analyze text and return an array of token texts.</p> </dd> -<dt>Dump</dt> +<dt id="func_Dump">Dump</dt> <dd> -<pre><code><a href="cfish_Obj.html">cfish_Obj*</a> // incremented -<strong>LUCY_Analyzer_Dump</strong>( - lucy_Analyzer* <strong>self</strong> +<pre><code><span class="prefix">cfish_</span><a href="cfish_Obj.html">Obj*</a> <span class="comment">// incremented</span> +<span class="prefix">LUCY_</span><strong>Analyzer_Dump</strong>( + <span class="prefix">lucy_</span>Analyzer* <strong>self</strong> ); </code></pre> </dd> -<dt>Load</dt> +<dt id="func_Load">Load</dt> <dd> -<pre><code><a href="cfish_Obj.html">cfish_Obj*</a> // incremented -<strong>LUCY_Analyzer_Load</strong>( - lucy_Analyzer* <strong>self</strong>, - <a href="cfish_Obj.html">cfish_Obj*</a> <strong>dump</strong> +<pre><code><span class="prefix">cfish_</span><a href="cfish_Obj.html">Obj*</a> <span class="comment">// incremented</span> +<span class="prefix">LUCY_</span><strong>Analyzer_Load</strong>( + <span class="prefix">lucy_</span>Analyzer* <strong>self</strong>, + <span class="prefix">cfish_</span><a href="cfish_Obj.html">Obj*</a> <strong>dump</strong> ); </code></pre> </dd> Modified: websites/staging/lucy/trunk/content/docs/c/lucy_Collector.html ============================================================================== --- websites/staging/lucy/trunk/content/docs/c/lucy_Collector.html (original) +++ websites/staging/lucy/trunk/content/docs/c/lucy_Collector.html Tue Dec 2 17:54:11 2014 @@ -1,110 +1,173 @@ <!DOCTYPE html> <html> <head> +<meta charset="utf-8"> +<!-- +*********************************************** + +!!!! DO NOT EDIT !!!! + +This file was auto-generated by cfc. + +*********************************************** + +Licensed to the Apache Software Foundation (ASF) under one or more +contributor license agreements. See the NOTICE file distributed with +this work for additional information regarding copyright ownership. +The ASF licenses this file to You under the Apache License, Version 2.0 +(the "License"); you may not use this file except in compliance with +the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +--> <meta name="viewport" content="width=device-width" /> +<title>Lucy::Search::Collector â C API Documentation</title> <style type="text/css"> body { - font-family: sans-serif; - font-size: 0.85em; - max-width: 640px; + max-width: 48em; + font: 0.85em/1.4 sans-serif; +} +a { + color: #23b; +} +table { + border-collapse: collapse; +} +td { + padding: 0; +} +td.label { + padding-right: 2em; + font-weight: bold; } dt { font-weight: bold; } pre { - border: 1px solid #000; + border: 1px solid #ccc; padding: 0.2em 0.4em; background: #f6f6f6; - font-size: 1.2em; + font-size: 0.92em; } -code { +pre a { + text-decoration: none; +} +pre, code { font-family: "Consolas", "Menlo", monospace; } +span.prefix, span.comment { + color: #888; +} </style> </head> <body> <h1>Lucy::Search::Collector</h1> +<table> +<tr> +<td class="label">parcel</td> +<td><a href="lucy.html">Lucy</a></td> +</tr> +<tr> +<td class="label">class name</td> +<td>Lucy::Search::Collector</td> +</tr> +<tr> +<td class="label">class nickname</td> +<td>Coll</td> +</tr> +<tr> +<td class="label">class variable</td> +<td><code>LUCY_COLLECTOR</code></td> +</tr> +<tr> +<td class="label">struct symbol</td> +<td><code>lucy_Collector</code></td> +</tr> +</table> <h2>Name</h2> -<p>Lucy::Search::Collector - Process hits.</p> +<p>Lucy::Search::Collector â Process hits.</p> <h2>Description</h2> <p>A Collector decides what to do with the hits that a <a href="lucy_Matcher.html">Matcher</a> iterates through, based on how the -abstract Collect() method is implemented.</p> +abstract <a href="lucy_Collector.html#func_Collect">Collect()</a> method is implemented.</p> <p>Collectors operate on individual segments, but must operate within the context of a larger collection. Each time the collector moves to a new -segment, Set_Reader(), Set_Base() and Set_Matcher() will be called, and the +segment, <a href="lucy_Collector.html#func_Set_Reader">Set_Reader()</a>, <a href="lucy_Collector.html#func_Set_Base">Set_Base()</a> and <a href="lucy_Collector.html#func_Set_Matcher">Set_Matcher()</a> will be called, and the collector must take the updated information into account.</p> <h2>Functions</h2> <dl> -<dt>init</dt> +<dt id="func_init">init</dt> <dd> -<pre><code>lucy_Collector* -<strong>lucy_Coll_init</strong>( - lucy_Collector* <strong>self</strong> +<pre><code><span class="prefix">lucy_</span>Collector* +<span class="prefix">lucy_</span><strong>Coll_init</strong>( + <span class="prefix">lucy_</span>Collector* <strong>self</strong> ); </code></pre> <p>Abstract constructor. Takes no arguments.</p> </dd> </dl> <h2>Methods</h2> -<h3>Abstract methods</h3> +<h3>Novel methods</h3 <dl> -<dt>Collect</dt> +<dt id="func_Collect">Collect <span class="comment">(abstract)</span></dt> <dd> <pre><code>void -<strong>LUCY_Coll_Collect</strong>( - lucy_Collector* <strong>self</strong>, +<span class="prefix">LUCY_</span><strong>Coll_Collect</strong>( + <span class="prefix">lucy_</span>Collector* <strong>self</strong>, int32_t <strong>doc_id</strong> ); </code></pre> <p>Do something with a doc id. (For instance, keep track of the docs with the ten highest scores.)</p> <dl> -<dt><emph>doc_id</emph></dt> +<dt>doc_id</dt> <dd><p>A segment document id.</p> </dd> </dl> </dd> -<dt>Need_Score</dt> -<dd> -<pre><code>bool -<strong>LUCY_Coll_Need_Score</strong>( - lucy_Collector* <strong>self</strong> -); -</code></pre> -<p>Indicate whether the Collector will call Score() on its Matcher.</p> -</dd> -</dl> -<h3>Novel methods</h3> -<dl> -<dt>Set_Reader</dt> +<dt id="func_Set_Reader">Set_Reader</dt> <dd> <pre><code>void -<strong>LUCY_Coll_Set_Reader</strong>( - lucy_Collector* <strong>self</strong>, - <a href="lucy_SegReader.html">lucy_SegReader*</a> <strong>reader</strong> +<span class="prefix">LUCY_</span><strong>Coll_Set_Reader</strong>( + <span class="prefix">lucy_</span>Collector* <strong>self</strong>, + <span class="prefix">lucy_</span><a href="lucy_SegReader.html">SegReader*</a> <strong>reader</strong> ); </code></pre> <p>Setter for "reader".</p> </dd> -<dt>Set_Base</dt> +<dt id="func_Set_Base">Set_Base</dt> <dd> <pre><code>void -<strong>LUCY_Coll_Set_Base</strong>( - lucy_Collector* <strong>self</strong>, +<span class="prefix">LUCY_</span><strong>Coll_Set_Base</strong>( + <span class="prefix">lucy_</span>Collector* <strong>self</strong>, int32_t <strong>base</strong> ); </code></pre> <p>Set the "base" document id, an offset which must be added to the -<code>doc_id</code> supplied via Collect() to get the doc id for the +<code>doc_id</code> supplied via <a href="lucy_Collector.html#func_Collect">Collect()</a> to get the doc id for the larger index.</p> </dd> -<dt>Set_Matcher</dt> +<dt id="func_Need_Score">Need_Score <span class="comment">(abstract)</span></dt> +<dd> +<pre><code>bool +<span class="prefix">LUCY_</span><strong>Coll_Need_Score</strong>( + <span class="prefix">lucy_</span>Collector* <strong>self</strong> +); +</code></pre> +<p>Indicate whether the Collector will call <a href="lucy_Matcher.html#func_Score">Score()</a> on its Matcher.</p> +</dd> +<dt id="func_Set_Matcher">Set_Matcher</dt> <dd> <pre><code>void -<strong>LUCY_Coll_Set_Matcher</strong>( - lucy_Collector* <strong>self</strong>, - <a href="lucy_Matcher.html">lucy_Matcher*</a> <strong>matcher</strong> +<span class="prefix">LUCY_</span><strong>Coll_Set_Matcher</strong>( + <span class="prefix">lucy_</span>Collector* <strong>self</strong>, + <span class="prefix">lucy_</span><a href="lucy_Matcher.html">Matcher*</a> <strong>matcher</strong> ); </code></pre> <p>Setter for "matcher".</p> Modified: websites/staging/lucy/trunk/content/docs/c/lucy_Compiler.html ============================================================================== --- websites/staging/lucy/trunk/content/docs/c/lucy_Compiler.html (original) +++ websites/staging/lucy/trunk/content/docs/c/lucy_Compiler.html Tue Dec 2 17:54:11 2014 @@ -1,44 +1,110 @@ <!DOCTYPE html> <html> <head> +<meta charset="utf-8"> +<!-- +*********************************************** + +!!!! DO NOT EDIT !!!! + +This file was auto-generated by cfc. + +*********************************************** + +Licensed to the Apache Software Foundation (ASF) under one or more +contributor license agreements. See the NOTICE file distributed with +this work for additional information regarding copyright ownership. +The ASF licenses this file to You under the Apache License, Version 2.0 +(the "License"); you may not use this file except in compliance with +the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +--> <meta name="viewport" content="width=device-width" /> +<title>Lucy::Search::Compiler â C API Documentation</title> <style type="text/css"> body { - font-family: sans-serif; - font-size: 0.85em; - max-width: 640px; + max-width: 48em; + font: 0.85em/1.4 sans-serif; +} +a { + color: #23b; +} +table { + border-collapse: collapse; +} +td { + padding: 0; +} +td.label { + padding-right: 2em; + font-weight: bold; } dt { font-weight: bold; } pre { - border: 1px solid #000; + border: 1px solid #ccc; padding: 0.2em 0.4em; background: #f6f6f6; - font-size: 1.2em; + font-size: 0.92em; } -code { +pre a { + text-decoration: none; +} +pre, code { font-family: "Consolas", "Menlo", monospace; } +span.prefix, span.comment { + color: #888; +} </style> </head> <body> <h1>Lucy::Search::Compiler</h1> +<table> +<tr> +<td class="label">parcel</td> +<td><a href="lucy.html">Lucy</a></td> +</tr> +<tr> +<td class="label">class name</td> +<td>Lucy::Search::Compiler</td> +</tr> +<tr> +<td class="label">class nickname</td> +<td>Compiler</td> +</tr> +<tr> +<td class="label">class variable</td> +<td><code>LUCY_COMPILER</code></td> +</tr> +<tr> +<td class="label">struct symbol</td> +<td><code>lucy_Compiler</code></td> +</tr> +</table> <h2>Name</h2> -<p>Lucy::Search::Compiler - Query-to-Matcher compiler.</p> +<p>Lucy::Search::Compiler â Query-to-Matcher compiler.</p> <h2>Description</h2> <p>The purpose of the Compiler class is to take a specification in the form of a <a href="lucy_Query.html">Query</a> object and compile a <a href="lucy_Matcher.html">Matcher</a> object that can do real work.</p> <p>The simplest Compiler subclasses -- such as those associated with -constant-scoring Query types -- might simply implement a Make_Matcher() +constant-scoring Query types -- might simply implement a <a href="lucy_Compiler.html#func_Make_Matcher">Make_Matcher()</a> method which passes along information verbatim from the Query to the Matcher's constructor.</p> <p>However it is common for the Compiler to perform some calculations which affect it's "weight" -- a floating point multiplier that the Matcher will factor into each document's score. If that is the case, then the Compiler -subclass may wish to override Get_Weight(), Sum_Of_Squared_Weights(), and -Apply_Norm_Factor().</p> +subclass may wish to override <a href="lucy_Compiler.html#func_Get_Weight">Get_Weight()</a>, <a href="lucy_Compiler.html#func_Sum_Of_Squared_Weights">Sum_Of_Squared_Weights()</a>, and +<a href="lucy_Compiler.html#func_Apply_Norm_Factor">Apply_Norm_Factor()</a>.</p> <p>Compiling a Matcher is a two stage process.</p> <p>The first stage takes place during the Compiler's construction, which is where the Query object meets a <a href="lucy_Searcher.html">Searcher</a> @@ -49,7 +115,7 @@ how many documents in the collection a p Lucy's core Compiler classes plug this information into the classic TF/IDF weighting algorithm to adjust the Compiler's weight; custom subclasses might do something similar.</p> -<p>The second stage of compilation is Make_Matcher(), method, which is where +<p>The second stage of compilation is <a href="lucy_Compiler.html#func_Make_Matcher">Make_Matcher()</a>, method, which is where the Compiler meets a <a href="lucy_SegReader.html">SegReader</a> object. SegReaders are associated with a single segment within a single index on a single machine, and are thus lower-level than Searchers, which may @@ -58,34 +124,34 @@ represent a document collection spread o use new information supplied by the SegReader -- such as whether a term is missing from the local index even though it is present within the larger collection represented by the Searcher -- when figuring out what to feed to -the Matchers's constructor, or whether Make_Matcher() should return a +the Matchers's constructor, or whether <a href="lucy_Compiler.html#func_Make_Matcher">Make_Matcher()</a> should return a Matcher at all.</p> <h2>Functions</h2> <dl> -<dt>init</dt> +<dt id="func_init">init</dt> <dd> -<pre><code>lucy_Compiler* -<strong>lucy_Compiler_init</strong>( - lucy_Compiler* <strong>self</strong>, - <a href="lucy_Query.html">lucy_Query*</a> <strong>parent</strong>, - <a href="lucy_Searcher.html">lucy_Searcher*</a> <strong>searcher</strong>, - <a href="lucy_Similarity.html">lucy_Similarity*</a> <strong>similarity</strong>, +<pre><code><span class="prefix">lucy_</span>Compiler* +<span class="prefix">lucy_</span><strong>Compiler_init</strong>( + <span class="prefix">lucy_</span>Compiler* <strong>self</strong>, + <span class="prefix">lucy_</span><a href="lucy_Query.html">Query*</a> <strong>parent</strong>, + <span class="prefix">lucy_</span><a href="lucy_Searcher.html">Searcher*</a> <strong>searcher</strong>, + <span class="prefix">lucy_</span><a href="lucy_Similarity.html">Similarity*</a> <strong>similarity</strong>, float <strong>boost</strong> ); </code></pre> <p>Abstract constructor.</p> <dl> -<dt><emph>parent</emph></dt> +<dt>parent</dt> <dd><p>The parent Query.</p> </dd> -<dt><emph>searcher</emph></dt> +<dt>searcher</dt> <dd><p>A Lucy::Search::Searcher, such as an IndexSearcher.</p> </dd> -<dt><emph>similarity</emph></dt> +<dt>similarity</dt> <dd><p>A Similarity.</p> </dd> -<dt><emph>boost</emph></dt> +<dt>boost</dt> <dd><p>An arbitrary scoring multiplier. Defaults to the boost of the parent Query.</p> </dd> @@ -93,75 +159,72 @@ the parent Query.</p> </dd> </dl> <h2>Methods</h2> -<h3>Abstract methods</h3> +<h3>Novel methods</h3 <dl> -<dt>Make_Matcher</dt> +<dt id="func_Make_Matcher">Make_Matcher <span class="comment">(abstract)</span></dt> <dd> -<pre><code><a href="lucy_Matcher.html">lucy_Matcher*</a> // incremented -<strong>LUCY_Compiler_Make_Matcher</strong>( - lucy_Compiler* <strong>self</strong>, - <a href="lucy_SegReader.html">lucy_SegReader*</a> <strong>reader</strong>, +<pre><code><span class="prefix">lucy_</span><a href="lucy_Matcher.html">Matcher*</a> <span class="comment">// incremented</span> +<span class="prefix">LUCY_</span><strong>Compiler_Make_Matcher</strong>( + <span class="prefix">lucy_</span>Compiler* <strong>self</strong>, + <span class="prefix">lucy_</span><a href="lucy_SegReader.html">SegReader*</a> <strong>reader</strong>, bool <strong>need_score</strong> ); </code></pre> <p>Factory method returning a Matcher.</p> <dl> -<dt><emph>reader</emph></dt> +<dt>reader</dt> <dd><p>A SegReader.</p> </dd> -<dt><emph>need_score</emph></dt> -<dd><p>Indicate whether the Matcher must implement Score().</p> +<dt>need_score</dt> +<dd><p>Indicate whether the Matcher must implement <a href="lucy_Matcher.html#func_Score">Score()</a>.</p> </dd> </dl> <p><strong>Returns:</strong> a Matcher, or NULL if the Matcher would have matched no documents.</p> </dd> -</dl> -<h3>Novel methods</h3> -<dl> -<dt>Get_Weight</dt> +<dt id="func_Get_Weight">Get_Weight</dt> <dd> <pre><code>float -<strong>LUCY_Compiler_Get_Weight</strong>( - lucy_Compiler* <strong>self</strong> +<span class="prefix">LUCY_</span><strong>Compiler_Get_Weight</strong>( + <span class="prefix">lucy_</span>Compiler* <strong>self</strong> ); </code></pre> <p>Return the Compiler's numerical weight, a scoring multiplier. By default, returns the object's boost.</p> </dd> -<dt>Get_Similarity</dt> +<dt id="func_Get_Similarity">Get_Similarity</dt> <dd> -<pre><code><a href="lucy_Similarity.html">lucy_Similarity*</a> -<strong>LUCY_Compiler_Get_Similarity</strong>( - lucy_Compiler* <strong>self</strong> +<pre><code><span class="prefix">lucy_</span><a href="lucy_Similarity.html">Similarity*</a> +<span class="prefix">LUCY_</span><strong>Compiler_Get_Similarity</strong>( + <span class="prefix">lucy_</span>Compiler* <strong>self</strong> ); </code></pre> <p>Accessor for the Compiler's Similarity object.</p> </dd> -<dt>Get_Parent</dt> +<dt id="func_Get_Parent">Get_Parent</dt> <dd> -<pre><code><a href="lucy_Query.html">lucy_Query*</a> -<strong>LUCY_Compiler_Get_Parent</strong>( - lucy_Compiler* <strong>self</strong> +<pre><code><span class="prefix">lucy_</span><a href="lucy_Query.html">Query*</a> +<span class="prefix">LUCY_</span><strong>Compiler_Get_Parent</strong>( + <span class="prefix">lucy_</span>Compiler* <strong>self</strong> ); </code></pre> <p>Accessor for the Compiler's parent Query object.</p> </dd> -<dt>Sum_Of_Squared_Weights</dt> +<dt id="func_Sum_Of_Squared_Weights">Sum_Of_Squared_Weights</dt> <dd> <pre><code>float -<strong>LUCY_Compiler_Sum_Of_Squared_Weights</strong>( - lucy_Compiler* <strong>self</strong> +<span class="prefix">LUCY_</span><strong>Compiler_Sum_Of_Squared_Weights</strong>( + <span class="prefix">lucy_</span>Compiler* <strong>self</strong> ); </code></pre> <p>Compute and return a raw weighting factor. (This quantity is used by -Normalize()). By default, simply returns 1.0.</p> +<a href="lucy_Compiler.html#func_Normalize">Normalize()</a>). By default, simply returns 1.0.</p> </dd> -<dt>Apply_Norm_Factor</dt> +<dt id="func_Apply_Norm_Factor">Apply_Norm_Factor</dt> <dd> <pre><code>void -<strong>LUCY_Compiler_Apply_Norm_Factor</strong>( - lucy_Compiler* <strong>self</strong>, +<span class="prefix">LUCY_</span><strong>Compiler_Apply_Norm_Factor</strong>( + <span class="prefix">lucy_</span>Compiler* <strong>self</strong>, float <strong>factor</strong> ); </code></pre> @@ -172,37 +235,37 @@ to their children.</p> <p>The default implementation is a no-op; subclasses may wish to multiply their internal weight by the supplied factor.</p> <dl> -<dt><emph>factor</emph></dt> +<dt>factor</dt> <dd><p>The multiplier.</p> </dd> </dl> </dd> -<dt>Normalize</dt> +<dt id="func_Normalize">Normalize</dt> <dd> <pre><code>void -<strong>LUCY_Compiler_Normalize</strong>( - lucy_Compiler* <strong>self</strong> +<span class="prefix">LUCY_</span><strong>Compiler_Normalize</strong>( + <span class="prefix">lucy_</span>Compiler* <strong>self</strong> ); </code></pre> <p>Take a newly minted Compiler object and apply query-specific normalization factors. Should be invoked by Query subclasses during -Make_Compiler() for top-level nodes.</p> +<a href="lucy_Compiler.html#func_Make_Compiler">Make_Compiler()</a> for top-level nodes.</p> <p>For a TermQuery, the scoring formula is approximately:</p> <pre><code>(tf_d * idf_t / norm_d) * (tf_q * idf_t / norm_q) </code></pre> -<p>Normalize() is theoretically concerned with applying the second half of +<p><a href="lucy_Compiler.html#func_Normalize">Normalize()</a> is theoretically concerned with applying the second half of that formula to a the Compiler's weight. What actually happens depends on how the Compiler and Similarity methods called internally are implemented.</p> </dd> -<dt>Highlight_Spans</dt> +<dt id="func_Highlight_Spans">Highlight_Spans</dt> <dd> -<pre><code><a href="cfish_VArray.html">cfish_VArray*</a> // incremented -<strong>LUCY_Compiler_Highlight_Spans</strong>( - lucy_Compiler* <strong>self</strong>, - <a href="lucy_Searcher.html">lucy_Searcher*</a> <strong>searcher</strong>, - <a href="lucy_DocVector.html">lucy_DocVector*</a> <strong>doc_vec</strong>, - <a href="cfish_String.html">cfish_String*</a> <strong>field</strong> +<pre><code><span class="prefix">cfish_</span><a href="cfish_VArray.html">VArray*</a> <span class="comment">// incremented</span> +<span class="prefix">LUCY_</span><strong>Compiler_Highlight_Spans</strong>( + <span class="prefix">lucy_</span>Compiler* <strong>self</strong>, + <span class="prefix">lucy_</span><a href="lucy_Searcher.html">Searcher*</a> <strong>searcher</strong>, + <span class="prefix">lucy_</span><a href="lucy_DocVector.html">DocVector*</a> <strong>doc_vec</strong>, + <span class="prefix">cfish_</span><a href="cfish_String.html">String*</a> <strong>field</strong> ); </code></pre> <p>Return an array of Span objects, indicating where in the given field @@ -211,96 +274,97 @@ matches. The Span's offset and length a points.</p> <p>The default implementation returns an empty array.</p> <dl> -<dt><emph>searcher</emph></dt> +<dt>searcher</dt> <dd><p>A Searcher.</p> </dd> -<dt><emph>doc_vec</emph></dt> +<dt>doc_vec</dt> <dd><p>A DocVector.</p> </dd> -<dt><emph>field</emph></dt> +<dt>field</dt> <dd><p>The name of the field.</p> </dd> </dl> </dd> </dl> -<h3>Methods inherited from Lucy::Search::Query</h3><dl> -<dt>Make_Compiler</dt> +<h3>Methods inherited from Lucy::Search::Query</h3> +<dl> +<dt id="func_Make_Compiler">Make_Compiler <span class="comment">(abstract)</span></dt> <dd> -<pre><code><a href="lucy_Compiler.html">lucy_Compiler*</a> // incremented -<strong>LUCY_Query_Make_Compiler</strong>( - lucy_Query* <strong>self</strong>, - <a href="lucy_Searcher.html">lucy_Searcher*</a> <strong>searcher</strong>, +<pre><code><span class="prefix">lucy_</span><a href="lucy_Compiler.html">Compiler*</a> <span class="comment">// incremented</span> +<span class="prefix">LUCY_</span><strong>Query_Make_Compiler</strong>( + <span class="prefix">lucy_</span>Query* <strong>self</strong>, + <span class="prefix">lucy_</span><a href="lucy_Searcher.html">Searcher*</a> <strong>searcher</strong>, float <strong>boost</strong>, bool <strong>subordinate</strong> ); </code></pre> <p>Abstract factory method returning a Compiler derived from this Query.</p> <dl> -<dt><emph>searcher</emph></dt> +<dt>searcher</dt> <dd><p>A Searcher.</p> </dd> -<dt><emph>boost</emph></dt> +<dt>boost</dt> <dd><p>A scoring multiplier.</p> </dd> -<dt><emph>subordinate</emph></dt> +<dt>subordinate</dt> <dd><p>Indicates whether the Query is a subquery (as opposed to a top-level query). If false, the implementation must -invoke Normalize() on the newly minted Compiler object before returning +invoke <a href="lucy_Compiler.html#func_Normalize">Normalize()</a> on the newly minted Compiler object before returning it.</p> </dd> </dl> </dd> -<dt>Set_Boost</dt> +<dt id="func_Set_Boost">Set_Boost</dt> <dd> <pre><code>void -<strong>LUCY_Query_Set_Boost</strong>( - lucy_Query* <strong>self</strong>, +<span class="prefix">LUCY_</span><strong>Query_Set_Boost</strong>( + <span class="prefix">lucy_</span>Query* <strong>self</strong>, float <strong>boost</strong> ); </code></pre> <p>Set the Query's boost.</p> </dd> -<dt>Get_Boost</dt> +<dt id="func_Get_Boost">Get_Boost</dt> <dd> <pre><code>float -<strong>LUCY_Query_Get_Boost</strong>( - lucy_Query* <strong>self</strong> +<span class="prefix">LUCY_</span><strong>Query_Get_Boost</strong>( + <span class="prefix">lucy_</span>Query* <strong>self</strong> ); </code></pre> <p>Get the Query's boost.</p> </dd> -<dt>Serialize</dt> +<dt id="func_Serialize">Serialize</dt> <dd> <pre><code>void -<strong>LUCY_Query_Serialize</strong>( - lucy_Query* <strong>self</strong>, - <a href="lucy_OutStream.html">lucy_OutStream*</a> <strong>outstream</strong> +<span class="prefix">LUCY_</span><strong>Query_Serialize</strong>( + <span class="prefix">lucy_</span>Query* <strong>self</strong>, + <span class="prefix">lucy_</span><a href="lucy_OutStream.html">OutStream*</a> <strong>outstream</strong> ); </code></pre> </dd> -<dt>Deserialize</dt> +<dt id="func_Deserialize">Deserialize</dt> <dd> -<pre><code>lucy_Query* // incremented -<strong>LUCY_Query_Deserialize</strong>( - lucy_Query* <strong>self</strong>, // decremented - <a href="lucy_InStream.html">lucy_InStream*</a> <strong>instream</strong> +<pre><code><span class="prefix">lucy_</span>Query* <span class="comment">// incremented</span> +<span class="prefix">LUCY_</span><strong>Query_Deserialize</strong>( + <span class="prefix">lucy_</span>Query* <strong>self</strong>, <span class="comment">// decremented</span> + <span class="prefix">lucy_</span><a href="lucy_InStream.html">InStream*</a> <strong>instream</strong> ); </code></pre> </dd> -<dt>Dump</dt> +<dt id="func_Dump">Dump</dt> <dd> -<pre><code><a href="cfish_Obj.html">cfish_Obj*</a> // incremented -<strong>LUCY_Query_Dump</strong>( - lucy_Query* <strong>self</strong> +<pre><code><span class="prefix">cfish_</span><a href="cfish_Obj.html">Obj*</a> <span class="comment">// incremented</span> +<span class="prefix">LUCY_</span><strong>Query_Dump</strong>( + <span class="prefix">lucy_</span>Query* <strong>self</strong> ); </code></pre> </dd> -<dt>Load</dt> +<dt id="func_Load">Load</dt> <dd> -<pre><code><a href="cfish_Obj.html">cfish_Obj*</a> // incremented -<strong>LUCY_Query_Load</strong>( - lucy_Query* <strong>self</strong>, - <a href="cfish_Obj.html">cfish_Obj*</a> <strong>dump</strong> +<pre><code><span class="prefix">cfish_</span><a href="cfish_Obj.html">Obj*</a> <span class="comment">// incremented</span> +<span class="prefix">LUCY_</span><strong>Query_Load</strong>( + <span class="prefix">lucy_</span>Query* <strong>self</strong>, + <span class="prefix">cfish_</span><a href="cfish_Obj.html">Obj*</a> <strong>dump</strong> ); </code></pre> </dd> Modified: websites/staging/lucy/trunk/content/docs/c/lucy_DataReader.html ============================================================================== --- websites/staging/lucy/trunk/content/docs/c/lucy_DataReader.html (original) +++ websites/staging/lucy/trunk/content/docs/c/lucy_DataReader.html Tue Dec 2 17:54:11 2014 @@ -1,63 +1,129 @@ <!DOCTYPE html> <html> <head> +<meta charset="utf-8"> +<!-- +*********************************************** + +!!!! DO NOT EDIT !!!! + +This file was auto-generated by cfc. + +*********************************************** + +Licensed to the Apache Software Foundation (ASF) under one or more +contributor license agreements. See the NOTICE file distributed with +this work for additional information regarding copyright ownership. +The ASF licenses this file to You under the Apache License, Version 2.0 +(the "License"); you may not use this file except in compliance with +the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +--> <meta name="viewport" content="width=device-width" /> +<title>Lucy::Index::DataReader â C API Documentation</title> <style type="text/css"> body { - font-family: sans-serif; - font-size: 0.85em; - max-width: 640px; + max-width: 48em; + font: 0.85em/1.4 sans-serif; +} +a { + color: #23b; +} +table { + border-collapse: collapse; +} +td { + padding: 0; +} +td.label { + padding-right: 2em; + font-weight: bold; } dt { font-weight: bold; } pre { - border: 1px solid #000; + border: 1px solid #ccc; padding: 0.2em 0.4em; background: #f6f6f6; - font-size: 1.2em; + font-size: 0.92em; +} +pre a { + text-decoration: none; } -code { +pre, code { font-family: "Consolas", "Menlo", monospace; } +span.prefix, span.comment { + color: #888; +} </style> </head> <body> <h1>Lucy::Index::DataReader</h1> +<table> +<tr> +<td class="label">parcel</td> +<td><a href="lucy.html">Lucy</a></td> +</tr> +<tr> +<td class="label">class name</td> +<td>Lucy::Index::DataReader</td> +</tr> +<tr> +<td class="label">class nickname</td> +<td>DataReader</td> +</tr> +<tr> +<td class="label">class variable</td> +<td><code>LUCY_DATAREADER</code></td> +</tr> +<tr> +<td class="label">struct symbol</td> +<td><code>lucy_DataReader</code></td> +</tr> +</table> <h2>Name</h2> -<p>Lucy::Index::DataReader - Abstract base class for reading index data.</p> +<p>Lucy::Index::DataReader â Abstract base class for reading index data.</p> <h2>Description</h2> <p>DataReader is the companion class to <a href="lucy_DataWriter.html">DataWriter</a>. Every index component will implement one of each.</p> <h2>Functions</h2> <dl> -<dt>init</dt> +<dt id="func_init">init</dt> <dd> -<pre><code>lucy_DataReader* -<strong>lucy_DataReader_init</strong>( - lucy_DataReader* <strong>self</strong>, - <a href="lucy_Schema.html">lucy_Schema*</a> <strong>schema</strong>, - <a href="lucy_Folder.html">lucy_Folder*</a> <strong>folder</strong>, - <a href="lucy_Snapshot.html">lucy_Snapshot*</a> <strong>snapshot</strong>, - <a href="cfish_VArray.html">cfish_VArray*</a> <strong>segments</strong>, +<pre><code><span class="prefix">lucy_</span>DataReader* +<span class="prefix">lucy_</span><strong>DataReader_init</strong>( + <span class="prefix">lucy_</span>DataReader* <strong>self</strong>, + <span class="prefix">lucy_</span><a href="lucy_Schema.html">Schema*</a> <strong>schema</strong>, + <span class="prefix">lucy_</span><a href="lucy_Folder.html">Folder*</a> <strong>folder</strong>, + <span class="prefix">lucy_</span><a href="lucy_Snapshot.html">Snapshot*</a> <strong>snapshot</strong>, + <span class="prefix">cfish_</span><a href="cfish_VArray.html">VArray*</a> <strong>segments</strong>, int32_t <strong>seg_tick</strong> ); </code></pre> <dl> -<dt><emph>schema</emph></dt> +<dt>schema</dt> <dd><p>A Schema.</p> </dd> -<dt><emph>folder</emph></dt> +<dt>folder</dt> <dd><p>A Folder.</p> </dd> -<dt><emph>snapshot</emph></dt> +<dt>snapshot</dt> <dd><p>A Snapshot.</p> </dd> -<dt><emph>segments</emph></dt> +<dt>segments</dt> <dd><p>An array of Segments.</p> </dd> -<dt><emph>seg_tick</emph></dt> +<dt>seg_tick</dt> <dd><p>The array index of the Segment object within the <code>segments</code> array that this particular DataReader is assigned to, if any. A value of -1 indicates that no Segment should be @@ -67,97 +133,94 @@ assigned.</p> </dd> </dl> <h2>Methods</h2> -<h3>Abstract methods</h3> +<h3>Novel methods</h3 <dl> -<dt>Aggregator</dt> +<dt id="func_Aggregator">Aggregator <span class="comment">(abstract)</span></dt> <dd> -<pre><code>lucy_DataReader* // incremented -<strong>LUCY_DataReader_Aggregator</strong>( - lucy_DataReader* <strong>self</strong>, - <a href="cfish_VArray.html">cfish_VArray*</a> <strong>readers</strong>, - <a href="lucy_I32Array.html">lucy_I32Array*</a> <strong>offsets</strong> +<pre><code><span class="prefix">lucy_</span>DataReader* <span class="comment">// incremented</span> +<span class="prefix">LUCY_</span><strong>DataReader_Aggregator</strong>( + <span class="prefix">lucy_</span>DataReader* <strong>self</strong>, + <span class="prefix">cfish_</span><a href="cfish_VArray.html">VArray*</a> <strong>readers</strong>, + <span class="prefix">lucy_</span><a href="lucy_I32Array.html">I32Array*</a> <strong>offsets</strong> ); </code></pre> <p>Create a reader which aggregates the output of several lower level readers. Return NULL if such a reader is not valid.</p> <dl> -<dt><emph>readers</emph></dt> +<dt>readers</dt> <dd><p>An array of DataReaders.</p> </dd> -<dt><emph>offsets</emph></dt> +<dt>offsets</dt> <dd><p>Doc id start offsets for each reader.</p> </dd> </dl> </dd> -<dt>Close</dt> +<dt id="func_Get_Schema">Get_Schema</dt> <dd> -<pre><code>void -<strong>LUCY_DataReader_Close</strong>( - lucy_DataReader* <strong>self</strong> -); -</code></pre> -<p>Release external resources, e.g. streams. Implementations must be -safe for multiple calls. Once called, no other operations may be -performed upon either the reader or any component subreaders other than -object destruction.</p> -</dd> -</dl> -<h3>Novel methods</h3> -<dl> -<dt>Get_Schema</dt> -<dd> -<pre><code><a href="lucy_Schema.html">lucy_Schema*</a> -<strong>LUCY_DataReader_Get_Schema</strong>( - lucy_DataReader* <strong>self</strong> +<pre><code><span class="prefix">lucy_</span><a href="lucy_Schema.html">Schema*</a> +<span class="prefix">LUCY_</span><strong>DataReader_Get_Schema</strong>( + <span class="prefix">lucy_</span>DataReader* <strong>self</strong> ); </code></pre> <p>Accessor for "schema" member var.</p> </dd> -<dt>Get_Folder</dt> +<dt id="func_Get_Folder">Get_Folder</dt> <dd> -<pre><code><a href="lucy_Folder.html">lucy_Folder*</a> -<strong>LUCY_DataReader_Get_Folder</strong>( - lucy_DataReader* <strong>self</strong> +<pre><code><span class="prefix">lucy_</span><a href="lucy_Folder.html">Folder*</a> +<span class="prefix">LUCY_</span><strong>DataReader_Get_Folder</strong>( + <span class="prefix">lucy_</span>DataReader* <strong>self</strong> ); </code></pre> <p>Accessor for "folder" member var.</p> </dd> -<dt>Get_Snapshot</dt> +<dt id="func_Get_Snapshot">Get_Snapshot</dt> <dd> -<pre><code><a href="lucy_Snapshot.html">lucy_Snapshot*</a> -<strong>LUCY_DataReader_Get_Snapshot</strong>( - lucy_DataReader* <strong>self</strong> +<pre><code><span class="prefix">lucy_</span><a href="lucy_Snapshot.html">Snapshot*</a> +<span class="prefix">LUCY_</span><strong>DataReader_Get_Snapshot</strong>( + <span class="prefix">lucy_</span>DataReader* <strong>self</strong> ); </code></pre> <p>Accessor for "snapshot" member var.</p> </dd> -<dt>Get_Segments</dt> +<dt id="func_Get_Segments">Get_Segments</dt> <dd> -<pre><code><a href="cfish_VArray.html">cfish_VArray*</a> -<strong>LUCY_DataReader_Get_Segments</strong>( - lucy_DataReader* <strong>self</strong> +<pre><code><span class="prefix">cfish_</span><a href="cfish_VArray.html">VArray*</a> +<span class="prefix">LUCY_</span><strong>DataReader_Get_Segments</strong>( + <span class="prefix">lucy_</span>DataReader* <strong>self</strong> ); </code></pre> <p>Accessor for "segments" member var.</p> </dd> -<dt>Get_Segment</dt> +<dt id="func_Get_Segment">Get_Segment</dt> <dd> -<pre><code><a href="lucy_Segment.html">lucy_Segment*</a> -<strong>LUCY_DataReader_Get_Segment</strong>( - lucy_DataReader* <strong>self</strong> +<pre><code><span class="prefix">lucy_</span><a href="lucy_Segment.html">Segment*</a> +<span class="prefix">LUCY_</span><strong>DataReader_Get_Segment</strong>( + <span class="prefix">lucy_</span>DataReader* <strong>self</strong> ); </code></pre> <p>Accessor for "segment" member var.</p> </dd> -<dt>Get_Seg_Tick</dt> +<dt id="func_Get_Seg_Tick">Get_Seg_Tick</dt> <dd> <pre><code>int32_t -<strong>LUCY_DataReader_Get_Seg_Tick</strong>( - lucy_DataReader* <strong>self</strong> +<span class="prefix">LUCY_</span><strong>DataReader_Get_Seg_Tick</strong>( + <span class="prefix">lucy_</span>DataReader* <strong>self</strong> ); </code></pre> <p>Accessor for "seg_tick" member var.</p> </dd> +<dt id="func_Close">Close <span class="comment">(abstract)</span></dt> +<dd> +<pre><code>void +<span class="prefix">LUCY_</span><strong>DataReader_Close</strong>( + <span class="prefix">lucy_</span>DataReader* <strong>self</strong> +); +</code></pre> +<p>Release external resources, e.g. streams. Implementations must be +safe for multiple calls. Once called, no other operations may be +performed upon either the reader or any component subreaders other than +object destruction.</p> +</dd> </dl> <h2>Inheritance</h2> <p>Lucy::Index::DataReader is a <a href="cfish_Obj.html">Clownfish::Obj</a>.</p> Modified: websites/staging/lucy/trunk/content/docs/c/lucy_DataWriter.html ============================================================================== --- websites/staging/lucy/trunk/content/docs/c/lucy_DataWriter.html (original) +++ websites/staging/lucy/trunk/content/docs/c/lucy_DataWriter.html Tue Dec 2 17:54:11 2014 @@ -1,31 +1,97 @@ <!DOCTYPE html> <html> <head> +<meta charset="utf-8"> +<!-- +*********************************************** + +!!!! DO NOT EDIT !!!! + +This file was auto-generated by cfc. + +*********************************************** + +Licensed to the Apache Software Foundation (ASF) under one or more +contributor license agreements. See the NOTICE file distributed with +this work for additional information regarding copyright ownership. +The ASF licenses this file to You under the Apache License, Version 2.0 +(the "License"); you may not use this file except in compliance with +the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +--> <meta name="viewport" content="width=device-width" /> +<title>Lucy::Index::DataWriter â C API Documentation</title> <style type="text/css"> body { - font-family: sans-serif; - font-size: 0.85em; - max-width: 640px; + max-width: 48em; + font: 0.85em/1.4 sans-serif; +} +a { + color: #23b; +} +table { + border-collapse: collapse; +} +td { + padding: 0; +} +td.label { + padding-right: 2em; + font-weight: bold; } dt { font-weight: bold; } pre { - border: 1px solid #000; + border: 1px solid #ccc; padding: 0.2em 0.4em; background: #f6f6f6; - font-size: 1.2em; + font-size: 0.92em; } -code { +pre a { + text-decoration: none; +} +pre, code { font-family: "Consolas", "Menlo", monospace; } +span.prefix, span.comment { + color: #888; +} </style> </head> <body> <h1>Lucy::Index::DataWriter</h1> +<table> +<tr> +<td class="label">parcel</td> +<td><a href="lucy.html">Lucy</a></td> +</tr> +<tr> +<td class="label">class name</td> +<td>Lucy::Index::DataWriter</td> +</tr> +<tr> +<td class="label">class nickname</td> +<td>DataWriter</td> +</tr> +<tr> +<td class="label">class variable</td> +<td><code>LUCY_DATAWRITER</code></td> +</tr> +<tr> +<td class="label">struct symbol</td> +<td><code>lucy_DataWriter</code></td> +</tr> +</table> <h2>Name</h2> -<p>Lucy::Index::DataWriter - Write data to an index.</p> +<p>Lucy::Index::DataWriter â Write data to an index.</p> <h2>Description</h2> <p>DataWriter is an abstract base class for writing index data, generally in segment-sized chunks. Each component of an index -- e.g. stored fields, @@ -35,26 +101,26 @@ DataWriter/<a href="lucy_DataReader.html <a href="lucy_Architecture.html">Architecture</a>.</p> <h2>Functions</h2> <dl> -<dt>init</dt> +<dt id="func_init">init</dt> <dd> -<pre><code>lucy_DataWriter* -<strong>lucy_DataWriter_init</strong>( - lucy_DataWriter* <strong>self</strong>, - <a href="lucy_Schema.html">lucy_Schema*</a> <strong>schema</strong>, - <a href="lucy_Snapshot.html">lucy_Snapshot*</a> <strong>snapshot</strong>, - <a href="lucy_Segment.html">lucy_Segment*</a> <strong>segment</strong>, - <a href="lucy_PolyReader.html">lucy_PolyReader*</a> <strong>polyreader</strong> +<pre><code><span class="prefix">lucy_</span>DataWriter* +<span class="prefix">lucy_</span><strong>DataWriter_init</strong>( + <span class="prefix">lucy_</span>DataWriter* <strong>self</strong>, + <span class="prefix">lucy_</span><a href="lucy_Schema.html">Schema*</a> <strong>schema</strong>, + <span class="prefix">lucy_</span><a href="lucy_Snapshot.html">Snapshot*</a> <strong>snapshot</strong>, + <span class="prefix">lucy_</span><a href="lucy_Segment.html">Segment*</a> <strong>segment</strong>, + <span class="prefix">lucy_</span><a href="lucy_PolyReader.html">PolyReader*</a> <strong>polyreader</strong> ); </code></pre> <dl> -<dt><emph>snapshot</emph></dt> +<dt>snapshot</dt> <dd><p>The Snapshot that will be committed at the end of the indexing session.</p> </dd> -<dt><emph>segment</emph></dt> +<dt>segment</dt> <dd><p>The Segment in progress.</p> </dd> -<dt><emph>polyreader</emph></dt> +<dt>polyreader</dt> <dd><p>A PolyReader representing all existing data in the index. (If the index is brand new, the PolyReader will have no sub-readers).</p> @@ -63,79 +129,56 @@ sub-readers).</p> </dd> </dl> <h2>Methods</h2> -<h3>Abstract methods</h3> +<h3>Novel methods</h3 <dl> -<dt>Add_Inverted_Doc</dt> +<dt id="func_Add_Inverted_Doc">Add_Inverted_Doc <span class="comment">(abstract)</span></dt> <dd> <pre><code>void -<strong>LUCY_DataWriter_Add_Inverted_Doc</strong>( - lucy_DataWriter* <strong>self</strong>, - <a href="lucy_Inverter.html">lucy_Inverter*</a> <strong>inverter</strong>, +<span class="prefix">LUCY_</span><strong>DataWriter_Add_Inverted_Doc</strong>( + <span class="prefix">lucy_</span>DataWriter* <strong>self</strong>, + <span class="prefix">lucy_</span><a href="lucy_Inverter.html">Inverter*</a> <strong>inverter</strong>, int32_t <strong>doc_id</strong> ); </code></pre> <p>Process a document, previously inverted by <code>inverter</code>.</p> <dl> -<dt><emph>inverter</emph></dt> +<dt>inverter</dt> <dd><p>An Inverter wrapping an inverted document.</p> </dd> -<dt><emph>doc_id</emph></dt> +<dt>doc_id</dt> <dd><p>Internal number assigned to this document within the segment.</p> </dd> </dl> </dd> -<dt>Add_Segment</dt> +<dt id="func_Add_Segment">Add_Segment <span class="comment">(abstract)</span></dt> <dd> <pre><code>void -<strong>LUCY_DataWriter_Add_Segment</strong>( - lucy_DataWriter* <strong>self</strong>, - <a href="lucy_SegReader.html">lucy_SegReader*</a> <strong>reader</strong>, - <a href="lucy_I32Array.html">lucy_I32Array*</a> <strong>doc_map</strong> +<span class="prefix">LUCY_</span><strong>DataWriter_Add_Segment</strong>( + <span class="prefix">lucy_</span>DataWriter* <strong>self</strong>, + <span class="prefix">lucy_</span><a href="lucy_SegReader.html">SegReader*</a> <strong>reader</strong>, + <span class="prefix">lucy_</span><a href="lucy_I32Array.html">I32Array*</a> <strong>doc_map</strong> ); </code></pre> <p>Add content from an existing segment into the one currently being written.</p> <dl> -<dt><emph>reader</emph></dt> +<dt>reader</dt> <dd><p>The SegReader containing content to add.</p> </dd> -<dt><emph>doc_map</emph></dt> +<dt>doc_map</dt> <dd><p>An array of integers mapping old document ids to new. Deleted documents are mapped to 0, indicating that they should be skipped.</p> </dd> </dl> </dd> -<dt>Finish</dt> +<dt id="func_Delete_Segment">Delete_Segment</dt> <dd> <pre><code>void -<strong>LUCY_DataWriter_Finish</strong>( - lucy_DataWriter* <strong>self</strong> -); -</code></pre> -<p>Complete the segment: close all streams, store metadata, etc.</p> -</dd> -<dt>Format</dt> -<dd> -<pre><code>int32_t -<strong>LUCY_DataWriter_Format</strong>( - lucy_DataWriter* <strong>self</strong> -); -</code></pre> -<p>Every writer must specify a file format revision number, which should -increment each time the format changes. Responsibility for revision -checking is left to the companion DataReader.</p> -</dd> -</dl> -<h3>Novel methods</h3> -<dl> -<dt>Delete_Segment</dt> -<dd> -<pre><code>void -<strong>LUCY_DataWriter_Delete_Segment</strong>( - lucy_DataWriter* <strong>self</strong>, - <a href="lucy_SegReader.html">lucy_SegReader*</a> <strong>reader</strong> +<span class="prefix">LUCY_</span><strong>DataWriter_Delete_Segment</strong>( + <span class="prefix">lucy_</span>DataWriter* <strong>self</strong>, + <span class="prefix">lucy_</span><a href="lucy_SegReader.html">SegReader*</a> <strong>reader</strong> ); </code></pre> <p>Remove a segment's data. The default implementation is a no-op, as @@ -144,88 +187,108 @@ Subclasses which manage their own files should override this method and use it as a trigger for cleaning up obsolete data.</p> <dl> -<dt><emph>reader</emph></dt> +<dt>reader</dt> <dd><p>The SegReader containing content to merge, which must represent a segment which is part of the the current snapshot.</p> </dd> </dl> </dd> -<dt>Merge_Segment</dt> +<dt id="func_Merge_Segment">Merge_Segment</dt> <dd> <pre><code>void -<strong>LUCY_DataWriter_Merge_Segment</strong>( - lucy_DataWriter* <strong>self</strong>, - <a href="lucy_SegReader.html">lucy_SegReader*</a> <strong>reader</strong>, - <a href="lucy_I32Array.html">lucy_I32Array*</a> <strong>doc_map</strong> +<span class="prefix">LUCY_</span><strong>DataWriter_Merge_Segment</strong>( + <span class="prefix">lucy_</span>DataWriter* <strong>self</strong>, + <span class="prefix">lucy_</span><a href="lucy_SegReader.html">SegReader*</a> <strong>reader</strong>, + <span class="prefix">lucy_</span><a href="lucy_I32Array.html">I32Array*</a> <strong>doc_map</strong> ); </code></pre> <p>Move content from an existing segment into the one currently being written.</p> -<p>The default implementation calls Add_Segment() then Delete_Segment().</p> +<p>The default implementation calls <a href="lucy_DataWriter.html#func_Add_Segment">Add_Segment()</a> then <a href="lucy_DataWriter.html#func_Delete_Segment">Delete_Segment()</a>.</p> <dl> -<dt><emph>reader</emph></dt> +<dt>reader</dt> <dd><p>The SegReader containing content to merge, which must represent a segment which is part of the the current snapshot.</p> </dd> -<dt><emph>doc_map</emph></dt> +<dt>doc_map</dt> <dd><p>An array of integers mapping old document ids to new. Deleted documents are mapped to 0, indicating that they should be skipped.</p> </dd> </dl> </dd> -<dt>Metadata</dt> +<dt id="func_Finish">Finish <span class="comment">(abstract)</span></dt> +<dd> +<pre><code>void +<span class="prefix">LUCY_</span><strong>DataWriter_Finish</strong>( + <span class="prefix">lucy_</span>DataWriter* <strong>self</strong> +); +</code></pre> +<p>Complete the segment: close all streams, store metadata, etc.</p> +</dd> +<dt id="func_Metadata">Metadata</dt> <dd> -<pre><code><a href="cfish_Hash.html">cfish_Hash*</a> // incremented -<strong>LUCY_DataWriter_Metadata</strong>( - lucy_DataWriter* <strong>self</strong> +<pre><code><span class="prefix">cfish_</span><a href="cfish_Hash.html">Hash*</a> <span class="comment">// incremented</span> +<span class="prefix">LUCY_</span><strong>DataWriter_Metadata</strong>( + <span class="prefix">lucy_</span>DataWriter* <strong>self</strong> ); </code></pre> <p>Arbitrary metadata to be serialized and stored by the Segment. The default implementation supplies a Hash with a single key-value pair for "format".</p> </dd> -<dt>Get_Snapshot</dt> +<dt id="func_Format">Format <span class="comment">(abstract)</span></dt> +<dd> +<pre><code>int32_t +<span class="prefix">LUCY_</span><strong>DataWriter_Format</strong>( + <span class="prefix">lucy_</span>DataWriter* <strong>self</strong> +); +</code></pre> +<p>Every writer must specify a file format revision number, which should +increment each time the format changes. Responsibility for revision +checking is left to the companion DataReader.</p> +</dd> +<dt id="func_Get_Snapshot">Get_Snapshot</dt> <dd> -<pre><code><a href="lucy_Snapshot.html">lucy_Snapshot*</a> -<strong>LUCY_DataWriter_Get_Snapshot</strong>( - lucy_DataWriter* <strong>self</strong> +<pre><code><span class="prefix">lucy_</span><a href="lucy_Snapshot.html">Snapshot*</a> +<span class="prefix">LUCY_</span><strong>DataWriter_Get_Snapshot</strong>( + <span class="prefix">lucy_</span>DataWriter* <strong>self</strong> ); </code></pre> <p>Accessor for "snapshot" member var.</p> </dd> -<dt>Get_Segment</dt> +<dt id="func_Get_Segment">Get_Segment</dt> <dd> -<pre><code><a href="lucy_Segment.html">lucy_Segment*</a> -<strong>LUCY_DataWriter_Get_Segment</strong>( - lucy_DataWriter* <strong>self</strong> +<pre><code><span class="prefix">lucy_</span><a href="lucy_Segment.html">Segment*</a> +<span class="prefix">LUCY_</span><strong>DataWriter_Get_Segment</strong>( + <span class="prefix">lucy_</span>DataWriter* <strong>self</strong> ); </code></pre> <p>Accessor for "segment" member var.</p> </dd> -<dt>Get_PolyReader</dt> +<dt id="func_Get_PolyReader">Get_PolyReader</dt> <dd> -<pre><code><a href="lucy_PolyReader.html">lucy_PolyReader*</a> -<strong>LUCY_DataWriter_Get_PolyReader</strong>( - lucy_DataWriter* <strong>self</strong> +<pre><code><span class="prefix">lucy_</span><a href="lucy_PolyReader.html">PolyReader*</a> +<span class="prefix">LUCY_</span><strong>DataWriter_Get_PolyReader</strong>( + <span class="prefix">lucy_</span>DataWriter* <strong>self</strong> ); </code></pre> <p>Accessor for "polyreader" member var.</p> </dd> -<dt>Get_Schema</dt> +<dt id="func_Get_Schema">Get_Schema</dt> <dd> -<pre><code><a href="lucy_Schema.html">lucy_Schema*</a> -<strong>LUCY_DataWriter_Get_Schema</strong>( - lucy_DataWriter* <strong>self</strong> +<pre><code><span class="prefix">lucy_</span><a href="lucy_Schema.html">Schema*</a> +<span class="prefix">LUCY_</span><strong>DataWriter_Get_Schema</strong>( + <span class="prefix">lucy_</span>DataWriter* <strong>self</strong> ); </code></pre> <p>Accessor for "schema" member var.</p> </dd> -<dt>Get_Folder</dt> +<dt id="func_Get_Folder">Get_Folder</dt> <dd> -<pre><code><a href="lucy_Folder.html">lucy_Folder*</a> -<strong>LUCY_DataWriter_Get_Folder</strong>( - lucy_DataWriter* <strong>self</strong> +<pre><code><span class="prefix">lucy_</span><a href="lucy_Folder.html">Folder*</a> +<span class="prefix">LUCY_</span><strong>DataWriter_Get_Folder</strong>( + <span class="prefix">lucy_</span>DataWriter* <strong>self</strong> ); </code></pre> <p>Accessor for "folder" member var.</p> Modified: websites/staging/lucy/trunk/content/docs/c/lucy_DeletionsWriter.html ============================================================================== --- websites/staging/lucy/trunk/content/docs/c/lucy_DeletionsWriter.html (original) +++ websites/staging/lucy/trunk/content/docs/c/lucy_DeletionsWriter.html Tue Dec 2 17:54:11 2014 @@ -1,31 +1,97 @@ <!DOCTYPE html> <html> <head> +<meta charset="utf-8"> +<!-- +*********************************************** + +!!!! DO NOT EDIT !!!! + +This file was auto-generated by cfc. + +*********************************************** + +Licensed to the Apache Software Foundation (ASF) under one or more +contributor license agreements. See the NOTICE file distributed with +this work for additional information regarding copyright ownership. +The ASF licenses this file to You under the Apache License, Version 2.0 +(the "License"); you may not use this file except in compliance with +the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +--> <meta name="viewport" content="width=device-width" /> +<title>Lucy::Index::DeletionsWriter â C API Documentation</title> <style type="text/css"> body { - font-family: sans-serif; - font-size: 0.85em; - max-width: 640px; + max-width: 48em; + font: 0.85em/1.4 sans-serif; +} +a { + color: #23b; +} +table { + border-collapse: collapse; +} +td { + padding: 0; +} +td.label { + padding-right: 2em; + font-weight: bold; } dt { font-weight: bold; } pre { - border: 1px solid #000; + border: 1px solid #ccc; padding: 0.2em 0.4em; background: #f6f6f6; - font-size: 1.2em; + font-size: 0.92em; +} +pre a { + text-decoration: none; } -code { +pre, code { font-family: "Consolas", "Menlo", monospace; } +span.prefix, span.comment { + color: #888; +} </style> </head> <body> <h1>Lucy::Index::DeletionsWriter</h1> +<table> +<tr> +<td class="label">parcel</td> +<td><a href="lucy.html">Lucy</a></td> +</tr> +<tr> +<td class="label">class name</td> +<td>Lucy::Index::DeletionsWriter</td> +</tr> +<tr> +<td class="label">class nickname</td> +<td>DelWriter</td> +</tr> +<tr> +<td class="label">class variable</td> +<td><code>LUCY_DELETIONSWRITER</code></td> +</tr> +<tr> +<td class="label">struct symbol</td> +<td><code>lucy_DeletionsWriter</code></td> +</tr> +</table> <h2>Name</h2> -<p>Lucy::Index::DeletionsWriter - Abstract base class for marking documents as deleted.</p> +<p>Lucy::Index::DeletionsWriter â Abstract base class for marking documents as deleted.</p> <h2>Description</h2> <p>Subclasses of DeletionsWriter provide a low-level mechanism for declaring a document deleted from an index.</p> @@ -37,167 +103,165 @@ can create a Matcher iterator.</p> <p>Documents are truly deleted only when the segments which contain them are merged into new ones.</p> <h2>Methods</h2> -<h3>Abstract methods</h3> +<h3>Novel methods</h3 <dl> -<dt>Delete_By_Term</dt> +<dt id="func_Delete_By_Term">Delete_By_Term <span class="comment">(abstract)</span></dt> <dd> <pre><code>void -<strong>LUCY_DelWriter_Delete_By_Term</strong>( - lucy_DeletionsWriter* <strong>self</strong>, - <a href="cfish_String.html">cfish_String*</a> <strong>field</strong>, - <a href="cfish_Obj.html">cfish_Obj*</a> <strong>term</strong> +<span class="prefix">LUCY_</span><strong>DelWriter_Delete_By_Term</strong>( + <span class="prefix">lucy_</span>DeletionsWriter* <strong>self</strong>, + <span class="prefix">cfish_</span><a href="cfish_String.html">String*</a> <strong>field</strong>, + <span class="prefix">cfish_</span><a href="cfish_Obj.html">Obj*</a> <strong>term</strong> ); </code></pre> <p>Delete all documents in the index that index the supplied term.</p> <dl> -<dt><emph>field</emph></dt> +<dt>field</dt> <dd><p>The name of an indexed field. (If it is not spec'd as <code>indexed</code>, an error will occur.)</p> </dd> -<dt><emph>term</emph></dt> +<dt>term</dt> <dd><p>The term which identifies docs to be marked as deleted. If <code>field</code> is associated with an Analyzer, <code>term</code> will be processed automatically (so don't pre-process it yourself).</p> </dd> </dl> </dd> -<dt>Delete_By_Query</dt> +<dt id="func_Delete_By_Query">Delete_By_Query <span class="comment">(abstract)</span></dt> <dd> <pre><code>void -<strong>LUCY_DelWriter_Delete_By_Query</strong>( - lucy_DeletionsWriter* <strong>self</strong>, - <a href="lucy_Query.html">lucy_Query*</a> <strong>query</strong> +<span class="prefix">LUCY_</span><strong>DelWriter_Delete_By_Query</strong>( + <span class="prefix">lucy_</span>DeletionsWriter* <strong>self</strong>, + <span class="prefix">lucy_</span><a href="lucy_Query.html">Query*</a> <strong>query</strong> ); </code></pre> <p>Delete all documents in the index that match <code>query</code>.</p> <dl> -<dt><emph>query</emph></dt> +<dt>query</dt> <dd><p>A <a href="lucy_Query.html">Query</a>.</p> </dd> </dl> </dd> -<dt>Delete_By_Doc_ID</dt> +<dt id="func_Delete_By_Doc_ID">Delete_By_Doc_ID <span class="comment">(abstract)</span></dt> <dd> <pre><code>void -<strong>LUCY_DelWriter_Delete_By_Doc_ID</strong>( - lucy_DeletionsWriter* <strong>self</strong>, +<span class="prefix">LUCY_</span><strong>DelWriter_Delete_By_Doc_ID</strong>( + <span class="prefix">lucy_</span>DeletionsWriter* <strong>self</strong>, int32_t <strong>doc_id</strong> ); </code></pre> <p>Delete the document identified in the PolyReader by the supplied id.</p> </dd> -<dt>Updated</dt> +<dt id="func_Updated">Updated <span class="comment">(abstract)</span></dt> <dd> <pre><code>bool -<strong>LUCY_DelWriter_Updated</strong>( - lucy_DeletionsWriter* <strong>self</strong> +<span class="prefix">LUCY_</span><strong>DelWriter_Updated</strong>( + <span class="prefix">lucy_</span>DeletionsWriter* <strong>self</strong> ); </code></pre> <p>Returns true if there are updates that need to be written.</p> </dd> -<dt>Seg_Deletions</dt> +<dt id="func_Generate_Doc_Map">Generate_Doc_Map</dt> +<dd> +<pre><code><span class="prefix">lucy_</span><a href="lucy_I32Array.html">I32Array*</a> <span class="comment">// incremented</span> +<span class="prefix">LUCY_</span><strong>DelWriter_Generate_Doc_Map</strong>( + <span class="prefix">lucy_</span>DeletionsWriter* <strong>self</strong>, + <span class="prefix">lucy_</span><a href="lucy_Matcher.html">Matcher*</a> <strong>deletions</strong>, + int32_t <strong>doc_max</strong>, + int32_t <strong>offset</strong> +); +</code></pre> +<p>Produce an array of int32_t which wraps around deleted documents. The +position in the array represents the original doc id, and the value +represents the new doc id. Deleted docs are assigned the value - 0, so +if you had 4 docs and doc 2 was deleted, the array would have the +values... (1, 0, 2, 3).</p> +<dl> +<dt>offset</dt> +<dd><p>Value which gets added to each valid document id. +With an offset of 1000, the array in the previous example would be +{ 1001, 0, 1002, 1003 }.</p> +</dd> +</dl> +</dd> +<dt id="func_Seg_Deletions">Seg_Deletions <span class="comment">(abstract)</span></dt> <dd> -<pre><code><a href="lucy_Matcher.html">lucy_Matcher*</a> // incremented -<strong>LUCY_DelWriter_Seg_Deletions</strong>( - lucy_DeletionsWriter* <strong>self</strong>, - <a href="lucy_SegReader.html">lucy_SegReader*</a> <strong>seg_reader</strong> +<pre><code><span class="prefix">lucy_</span><a href="lucy_Matcher.html">Matcher*</a> <span class="comment">// incremented</span> +<span class="prefix">LUCY_</span><strong>DelWriter_Seg_Deletions</strong>( + <span class="prefix">lucy_</span>DeletionsWriter* <strong>self</strong>, + <span class="prefix">lucy_</span><a href="lucy_SegReader.html">SegReader*</a> <strong>seg_reader</strong> ); </code></pre> <p>Return a deletions iterator for the supplied SegReader, which must be a component within the PolyReader that was supplied at construction-time.</p> </dd> -<dt>Seg_Del_Count</dt> +<dt id="func_Seg_Del_Count">Seg_Del_Count <span class="comment">(abstract)</span></dt> <dd> <pre><code>int32_t -<strong>LUCY_DelWriter_Seg_Del_Count</strong>( - lucy_DeletionsWriter* <strong>self</strong>, - <a href="cfish_String.html">cfish_String*</a> <strong>seg_name</strong> +<span class="prefix">LUCY_</span><strong>DelWriter_Seg_Del_Count</strong>( + <span class="prefix">lucy_</span>DeletionsWriter* <strong>self</strong>, + <span class="prefix">cfish_</span><a href="cfish_String.html">String*</a> <strong>seg_name</strong> ); </code></pre> <p>Return the number of deletions for a given segment.</p> <dl> -<dt><emph>seg_name</emph></dt> +<dt>seg_name</dt> <dd><p>The name of the segment.</p> </dd> </dl> </dd> </dl> -<h3>Novel methods</h3> +<h3>Methods inherited from Lucy::Index::DataWriter</h3> <dl> -<dt>Generate_Doc_Map</dt> -<dd> -<pre><code><a href="lucy_I32Array.html">lucy_I32Array*</a> // incremented -<strong>LUCY_DelWriter_Generate_Doc_Map</strong>( - lucy_DeletionsWriter* <strong>self</strong>, - <a href="lucy_Matcher.html">lucy_Matcher*</a> <strong>deletions</strong>, - int32_t <strong>doc_max</strong>, - int32_t <strong>offset</strong> -); -</code></pre> -<p>Produce an array of int32_t which wraps around deleted documents. The -position in the array represents the original doc id, and the value -represents the new doc id. Deleted docs are assigned the value - 0, so -if you had 4 docs and doc 2 was deleted, the array would have the -values... (1, 0, 2, 3).</p> -<dl> -<dt><emph>offset</emph></dt> -<dd><p>Value which gets added to each valid document id. -With an offset of 1000, the array in the previous example would be -{ 1001, 0, 1002, 1003 }.</p> -</dd> -</dl> -</dd> -</dl> -<h3>Methods inherited from Lucy::Index::DataWriter</h3><dl> -<dt>Add_Inverted_Doc</dt> +<dt id="func_Add_Inverted_Doc">Add_Inverted_Doc <span class="comment">(abstract)</span></dt> <dd> <pre><code>void -<strong>LUCY_DataWriter_Add_Inverted_Doc</strong>( - lucy_DataWriter* <strong>self</strong>, - <a href="lucy_Inverter.html">lucy_Inverter*</a> <strong>inverter</strong>, +<span class="prefix">LUCY_</span><strong>DataWriter_Add_Inverted_Doc</strong>( + <span class="prefix">lucy_</span>DataWriter* <strong>self</strong>, + <span class="prefix">lucy_</span><a href="lucy_Inverter.html">Inverter*</a> <strong>inverter</strong>, int32_t <strong>doc_id</strong> ); </code></pre> <p>Process a document, previously inverted by <code>inverter</code>.</p> <dl> -<dt><emph>inverter</emph></dt> +<dt>inverter</dt> <dd><p>An Inverter wrapping an inverted document.</p> </dd> -<dt><emph>doc_id</emph></dt> +<dt>doc_id</dt> <dd><p>Internal number assigned to this document within the segment.</p> </dd> </dl> </dd> -<dt>Add_Segment</dt> +<dt id="func_Add_Segment">Add_Segment <span class="comment">(abstract)</span></dt> <dd> <pre><code>void -<strong>LUCY_DataWriter_Add_Segment</strong>( - lucy_DataWriter* <strong>self</strong>, - <a href="lucy_SegReader.html">lucy_SegReader*</a> <strong>reader</strong>, - <a href="lucy_I32Array.html">lucy_I32Array*</a> <strong>doc_map</strong> +<span class="prefix">LUCY_</span><strong>DataWriter_Add_Segment</strong>( + <span class="prefix">lucy_</span>DataWriter* <strong>self</strong>, + <span class="prefix">lucy_</span><a href="lucy_SegReader.html">SegReader*</a> <strong>reader</strong>, + <span class="prefix">lucy_</span><a href="lucy_I32Array.html">I32Array*</a> <strong>doc_map</strong> ); </code></pre> <p>Add content from an existing segment into the one currently being written.</p> <dl> -<dt><emph>reader</emph></dt> +<dt>reader</dt> <dd><p>The SegReader containing content to add.</p> </dd> -<dt><emph>doc_map</emph></dt> +<dt>doc_map</dt> <dd><p>An array of integers mapping old document ids to new. Deleted documents are mapped to 0, indicating that they should be skipped.</p> </dd> </dl> </dd> -<dt>Delete_Segment</dt> +<dt id="func_Delete_Segment">Delete_Segment</dt> <dd> <pre><code>void -<strong>LUCY_DataWriter_Delete_Segment</strong>( - lucy_DataWriter* <strong>self</strong>, - <a href="lucy_SegReader.html">lucy_SegReader*</a> <strong>reader</strong> +<span class="prefix">LUCY_</span><strong>DataWriter_Delete_Segment</strong>( + <span class="prefix">lucy_</span>DataWriter* <strong>self</strong>, + <span class="prefix">lucy_</span><a href="lucy_SegReader.html">SegReader*</a> <strong>reader</strong> ); </code></pre> <p>Remove a segment's data. The default implementation is a no-op, as @@ -206,108 +270,108 @@ Subclasses which manage their own files should override this method and use it as a trigger for cleaning up obsolete data.</p> <dl> -<dt><emph>reader</emph></dt> +<dt>reader</dt> <dd><p>The SegReader containing content to merge, which must represent a segment which is part of the the current snapshot.</p> </dd> </dl> </dd> -<dt>Merge_Segment</dt> +<dt id="func_Merge_Segment">Merge_Segment</dt> <dd> <pre><code>void -<strong>LUCY_DataWriter_Merge_Segment</strong>( - lucy_DataWriter* <strong>self</strong>, - <a href="lucy_SegReader.html">lucy_SegReader*</a> <strong>reader</strong>, - <a href="lucy_I32Array.html">lucy_I32Array*</a> <strong>doc_map</strong> +<span class="prefix">LUCY_</span><strong>DataWriter_Merge_Segment</strong>( + <span class="prefix">lucy_</span>DataWriter* <strong>self</strong>, + <span class="prefix">lucy_</span><a href="lucy_SegReader.html">SegReader*</a> <strong>reader</strong>, + <span class="prefix">lucy_</span><a href="lucy_I32Array.html">I32Array*</a> <strong>doc_map</strong> ); </code></pre> <p>Move content from an existing segment into the one currently being written.</p> -<p>The default implementation calls Add_Segment() then Delete_Segment().</p> +<p>The default implementation calls <a href="lucy_DataWriter.html#func_Add_Segment">Add_Segment()</a> then <a href="lucy_DataWriter.html#func_Delete_Segment">Delete_Segment()</a>.</p> <dl> -<dt><emph>reader</emph></dt> +<dt>reader</dt> <dd><p>The SegReader containing content to merge, which must represent a segment which is part of the the current snapshot.</p> </dd> -<dt><emph>doc_map</emph></dt> +<dt>doc_map</dt> <dd><p>An array of integers mapping old document ids to new. Deleted documents are mapped to 0, indicating that they should be skipped.</p> </dd> </dl> </dd> -<dt>Finish</dt> +<dt id="func_Finish">Finish <span class="comment">(abstract)</span></dt> <dd> <pre><code>void -<strong>LUCY_DataWriter_Finish</strong>( - lucy_DataWriter* <strong>self</strong> +<span class="prefix">LUCY_</span><strong>DataWriter_Finish</strong>( + <span class="prefix">lucy_</span>DataWriter* <strong>self</strong> ); </code></pre> <p>Complete the segment: close all streams, store metadata, etc.</p> </dd> -<dt>Metadata</dt> +<dt id="func_Metadata">Metadata</dt> <dd> -<pre><code><a href="cfish_Hash.html">cfish_Hash*</a> // incremented -<strong>LUCY_DataWriter_Metadata</strong>( - lucy_DataWriter* <strong>self</strong> +<pre><code><span class="prefix">cfish_</span><a href="cfish_Hash.html">Hash*</a> <span class="comment">// incremented</span> +<span class="prefix">LUCY_</span><strong>DataWriter_Metadata</strong>( + <span class="prefix">lucy_</span>DataWriter* <strong>self</strong> ); </code></pre> <p>Arbitrary metadata to be serialized and stored by the Segment. The default implementation supplies a Hash with a single key-value pair for "format".</p> </dd> -<dt>Format</dt> +<dt id="func_Format">Format <span class="comment">(abstract)</span></dt> <dd> <pre><code>int32_t -<strong>LUCY_DataWriter_Format</strong>( - lucy_DataWriter* <strong>self</strong> +<span class="prefix">LUCY_</span><strong>DataWriter_Format</strong>( + <span class="prefix">lucy_</span>DataWriter* <strong>self</strong> ); </code></pre> <p>Every writer must specify a file format revision number, which should increment each time the format changes. Responsibility for revision checking is left to the companion DataReader.</p> </dd> -<dt>Get_Snapshot</dt> +<dt id="func_Get_Snapshot">Get_Snapshot</dt> <dd> -<pre><code><a href="lucy_Snapshot.html">lucy_Snapshot*</a> -<strong>LUCY_DataWriter_Get_Snapshot</strong>( - lucy_DataWriter* <strong>self</strong> +<pre><code><span class="prefix">lucy_</span><a href="lucy_Snapshot.html">Snapshot*</a> +<span class="prefix">LUCY_</span><strong>DataWriter_Get_Snapshot</strong>( + <span class="prefix">lucy_</span>DataWriter* <strong>self</strong> ); </code></pre> <p>Accessor for "snapshot" member var.</p> </dd> -<dt>Get_Segment</dt> +<dt id="func_Get_Segment">Get_Segment</dt> <dd> -<pre><code><a href="lucy_Segment.html">lucy_Segment*</a> -<strong>LUCY_DataWriter_Get_Segment</strong>( - lucy_DataWriter* <strong>self</strong> +<pre><code><span class="prefix">lucy_</span><a href="lucy_Segment.html">Segment*</a> +<span class="prefix">LUCY_</span><strong>DataWriter_Get_Segment</strong>( + <span class="prefix">lucy_</span>DataWriter* <strong>self</strong> ); </code></pre> <p>Accessor for "segment" member var.</p> </dd> -<dt>Get_PolyReader</dt> +<dt id="func_Get_PolyReader">Get_PolyReader</dt> <dd> -<pre><code><a href="lucy_PolyReader.html">lucy_PolyReader*</a> -<strong>LUCY_DataWriter_Get_PolyReader</strong>( - lucy_DataWriter* <strong>self</strong> +<pre><code><span class="prefix">lucy_</span><a href="lucy_PolyReader.html">PolyReader*</a> +<span class="prefix">LUCY_</span><strong>DataWriter_Get_PolyReader</strong>( + <span class="prefix">lucy_</span>DataWriter* <strong>self</strong> ); </code></pre> <p>Accessor for "polyreader" member var.</p> </dd> -<dt>Get_Schema</dt> +<dt id="func_Get_Schema">Get_Schema</dt> <dd> -<pre><code><a href="lucy_Schema.html">lucy_Schema*</a> -<strong>LUCY_DataWriter_Get_Schema</strong>( - lucy_DataWriter* <strong>self</strong> +<pre><code><span class="prefix">lucy_</span><a href="lucy_Schema.html">Schema*</a> +<span class="prefix">LUCY_</span><strong>DataWriter_Get_Schema</strong>( + <span class="prefix">lucy_</span>DataWriter* <strong>self</strong> ); </code></pre> <p>Accessor for "schema" member var.</p> </dd> -<dt>Get_Folder</dt> +<dt id="func_Get_Folder">Get_Folder</dt> <dd> -<pre><code><a href="lucy_Folder.html">lucy_Folder*</a> -<strong>LUCY_DataWriter_Get_Folder</strong>( - lucy_DataWriter* <strong>self</strong> +<pre><code><span class="prefix">lucy_</span><a href="lucy_Folder.html">Folder*</a> +<span class="prefix">LUCY_</span><strong>DataWriter_Get_Folder</strong>( + <span class="prefix">lucy_</span>DataWriter* <strong>self</strong> ); </code></pre> <p>Accessor for "folder" member var.</p>