difftastic/rustdoc/tree_sitter/struct.QueryCursor.html

91 lines
38 KiB
HTML

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A stateful object for executing a `Query` on a syntax `Tree`."><title>QueryCursor in tree_sitter - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-ac92e1bbe349e143.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="tree_sitter" data-themes="" data-resource-suffix="" data-rustdoc-version="1.76.0 (07dca489a 2024-02-04)" data-channel="1.76.0" data-search-js="search-2b6ce74ff89ae146.js" data-settings-js="settings-4313503d2e1961c2.js" ><script src="../static.files/storage-f2adc0d6ca4d09fb.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-305769736d49e732.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-feafe1bb7466e4bd.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">&#9776;</button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../tree_sitter/index.html">tree_sitter</a><span class="version">0.25.10</span></h2></div><h2 class="location"><a href="#">QueryCursor</a></h2><div class="sidebar-elems"><section><h3><a href="#implementations">Methods</a></h3><ul class="block method"><li><a href="#method.captures">captures</a></li><li><a href="#method.captures_with_options">captures_with_options</a></li><li><a href="#method.did_exceed_match_limit">did_exceed_match_limit</a></li><li><a href="#method.from_raw">from_raw</a></li><li><a href="#method.into_raw">into_raw</a></li><li><a href="#method.match_limit">match_limit</a></li><li><a href="#method.matches">matches</a></li><li><a href="#method.matches_with_options">matches_with_options</a></li><li><a href="#method.new">new</a></li><li><a href="#method.set_byte_range">set_byte_range</a></li><li><a href="#method.set_match_limit">set_match_limit</a></li><li><a href="#method.set_max_start_depth">set_max_start_depth</a></li><li><a href="#method.set_point_range">set_point_range</a></li><li><a href="#method.set_timeout_micros">set_timeout_micros</a></li><li><a href="#method.timeout_micros">timeout_micros</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block trait-implementation"><li><a href="#impl-Default-for-QueryCursor">Default</a></li><li><a href="#impl-Drop-for-QueryCursor">Drop</a></li><li><a href="#impl-Send-for-QueryCursor">Send</a></li><li><a href="#impl-Sync-for-QueryCursor">Sync</a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block synthetic-implementation"><li><a href="#impl-RefUnwindSafe-for-QueryCursor">RefUnwindSafe</a></li><li><a href="#impl-Unpin-for-QueryCursor">Unpin</a></li><li><a href="#impl-UnwindSafe-for-QueryCursor">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block blanket-implementation"><li><a href="#impl-Any-for-T">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-T">Borrow&lt;T&gt;</a></li><li><a href="#impl-BorrowMut%3CT%3E-for-T">BorrowMut&lt;T&gt;</a></li><li><a href="#impl-From%3CT%3E-for-T">From&lt;T&gt;</a></li><li><a href="#impl-Into%3CU%3E-for-T">Into&lt;U&gt;</a></li><li><a href="#impl-TryFrom%3CU%3E-for-T">TryFrom&lt;U&gt;</a></li><li><a href="#impl-TryInto%3CU%3E-for-T">TryInto&lt;U&gt;</a></li></ul></section><h2><a href="index.html">In crate tree_sitter</a></h2></div></nav><div class="sidebar-resizer"></div>
<main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../tree_sitter/all.html" title="show sidebar"></a></div><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Struct <a href="index.html">tree_sitter</a>::<wbr><a class="struct" href="#">QueryCursor</a><button id="copy-path" title="Copy item path to clipboard"><img src="../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="src" href="../src/tree_sitter/lib.rs.html#289-291">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub struct QueryCursor { <span class="comment">/* private fields */</span> }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A stateful object for executing a <a href="struct.Query.html" title="struct tree_sitter::Query"><code>Query</code></a> on a syntax <a href="struct.Tree.html" title="struct tree_sitter::Tree"><code>Tree</code></a>.</p>
</div></details><h2 id="implementations" class="section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-QueryCursor" class="impl"><a class="src rightside" href="../src/tree_sitter/ffi.rs.html#162-180">source</a><a href="#impl-QueryCursor" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.QueryCursor.html" title="struct tree_sitter::QueryCursor">QueryCursor</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from_raw" class="method"><a class="src rightside" href="../src/tree_sitter/ffi.rs.html#169-173">source</a><h4 class="code-header">pub const unsafe fn <a href="#method.from_raw" class="fn">from_raw</a>(ptr: <a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.pointer.html">*mut </a><a class="struct" href="ffi/struct.TSQueryCursor.html" title="struct tree_sitter::ffi::TSQueryCursor">TSQueryCursor</a>) -&gt; Self</h4></section></summary><div class="docblock"><p>Reconstructs a <a href="struct.QueryCursor.html" title="struct tree_sitter::QueryCursor"><code>QueryCursor</code></a> from a raw pointer.</p>
<h5 id="safety"><a href="#safety">Safety</a></h5>
<p><code>ptr</code> must be non-null.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.into_raw" class="method"><a class="src rightside" href="../src/tree_sitter/ffi.rs.html#177-179">source</a><h4 class="code-header">pub fn <a href="#method.into_raw" class="fn">into_raw</a>(self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.pointer.html">*mut </a><a class="struct" href="ffi/struct.TSQueryCursor.html" title="struct tree_sitter::ffi::TSQueryCursor">TSQueryCursor</a></h4></section></summary><div class="docblock"><p>Consumes the <a href="struct.QueryCursor.html" title="struct tree_sitter::QueryCursor"><code>QueryCursor</code></a>, returning a raw pointer to the underlying C structure.</p>
</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-QueryCursor-1" class="impl"><a class="src rightside" href="../src/tree_sitter/lib.rs.html#2987-3278">source</a><a href="#impl-QueryCursor-1" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.QueryCursor.html" title="struct tree_sitter::QueryCursor">QueryCursor</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.new" class="method"><a class="src rightside" href="../src/tree_sitter/lib.rs.html#2994-2998">source</a><h4 class="code-header">pub fn <a href="#method.new" class="fn">new</a>() -&gt; Self</h4></section></summary><div class="docblock"><p>Create a new cursor for executing a given query.</p>
<p>The cursor stores the state that is needed to iteratively search for
matches.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.match_limit" class="method"><a class="src rightside" href="../src/tree_sitter/lib.rs.html#3003-3005">source</a><h4 class="code-header">pub fn <a href="#method.match_limit" class="fn">match_limit</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.u32.html">u32</a></h4></section></summary><div class="docblock"><p>Return the maximum number of in-progress matches for this cursor.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.set_match_limit" class="method"><a class="src rightside" href="../src/tree_sitter/lib.rs.html#3010-3014">source</a><h4 class="code-header">pub fn <a href="#method.set_match_limit" class="fn">set_match_limit</a>(&amp;mut self, limit: <a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.u32.html">u32</a>)</h4></section></summary><div class="docblock"><p>Set the maximum number of in-progress matches for this cursor. The
limit must be &gt; 0 and &lt;= 65536.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.set_timeout_micros" class="method"><a class="src rightside" href="../src/tree_sitter/lib.rs.html#3025-3029">source</a><h4 class="code-header">pub fn <a href="#method.set_timeout_micros" class="fn">set_timeout_micros</a>(&amp;mut self, timeout: <a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.u64.html">u64</a>)</h4></section><span class="item-info"><div class="stab deprecated"><span class="emoji">👎</span><span>Deprecated since 0.25.0: Prefer using <code>matches_with_options</code> or <code>captures_with_options</code> and using a callback</span></div></span></summary><div class="docblock"><p>Set the maximum duration in microseconds that query execution should be allowed to
take before halting.</p>
<p>If query execution takes longer than this, it will halt early, returning None.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.timeout_micros" class="method"><a class="src rightside" href="../src/tree_sitter/lib.rs.html#3040-3042">source</a><h4 class="code-header">pub fn <a href="#method.timeout_micros" class="fn">timeout_micros</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.u64.html">u64</a></h4></section><span class="item-info"><div class="stab deprecated"><span class="emoji">👎</span><span>Deprecated since 0.25.0: Prefer using <code>matches_with_options</code> or <code>captures_with_options</code> and using a callback</span></div></span></summary><div class="docblock"><p>Get the duration in microseconds that query execution is allowed to take.</p>
<p>This is set via <a href="struct.QueryCursor.html#method.set_timeout_micros" title="method tree_sitter::QueryCursor::set_timeout_micros"><code>set_timeout_micros</code></a>.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.did_exceed_match_limit" class="method"><a class="src rightside" href="../src/tree_sitter/lib.rs.html#3048-3050">source</a><h4 class="code-header">pub fn <a href="#method.did_exceed_match_limit" class="fn">did_exceed_match_limit</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Check if, on its last execution, this cursor exceeded its maximum number
of in-progress matches.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.matches" class="method"><a class="src rightside" href="../src/tree_sitter/lib.rs.html#3063-3081">source</a><h4 class="code-header">pub fn <a href="#method.matches" class="fn">matches</a>&lt;'query, 'cursor: 'query, 'tree, T: <a class="trait" href="trait.TextProvider.html" title="trait tree_sitter::TextProvider">TextProvider</a>&lt;I&gt;, I: <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;[<a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.u8.html">u8</a>]&gt;&gt;(
&amp;'cursor mut self,
query: &amp;'query <a class="struct" href="struct.Query.html" title="struct tree_sitter::Query">Query</a>,
node: <a class="struct" href="struct.Node.html" title="struct tree_sitter::Node">Node</a>&lt;'tree&gt;,
text_provider: T
) -&gt; <a class="struct" href="struct.QueryMatches.html" title="struct tree_sitter::QueryMatches">QueryMatches</a>&lt;'query, 'tree, T, I&gt;</h4></section></summary><div class="docblock"><p>Iterate over all of the matches in the order that they were found.</p>
<p>Each match contains the index of the pattern that matched, and a list of
captures. Because multiple patterns can match the same set of nodes,
one match may contain captures that appear <em>before</em> some of the
captures from a previous match.</p>
<p>Iterating over a <code>QueryMatches</code> object requires the <code>StreamingIterator</code>
or <code>StreamingIteratorMut</code> trait to be in scope. This can be done via
<code>use tree_sitter::StreamingIterator</code> or <code>use tree_sitter::StreamingIteratorMut</code></p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.matches_with_options" class="method"><a class="src rightside" href="../src/tree_sitter/lib.rs.html#3090-3138">source</a><h4 class="code-header">pub fn <a href="#method.matches_with_options" class="fn">matches_with_options</a>&lt;'query, 'cursor: 'query, 'tree, T: <a class="trait" href="trait.TextProvider.html" title="trait tree_sitter::TextProvider">TextProvider</a>&lt;I&gt;, I: <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;[<a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.u8.html">u8</a>]&gt;&gt;(
&amp;'cursor mut self,
query: &amp;'query <a class="struct" href="struct.Query.html" title="struct tree_sitter::Query">Query</a>,
node: <a class="struct" href="struct.Node.html" title="struct tree_sitter::Node">Node</a>&lt;'tree&gt;,
text_provider: T,
options: <a class="struct" href="struct.QueryCursorOptions.html" title="struct tree_sitter::QueryCursorOptions">QueryCursorOptions</a>&lt;'_&gt;
) -&gt; <a class="struct" href="struct.QueryMatches.html" title="struct tree_sitter::QueryMatches">QueryMatches</a>&lt;'query, 'tree, T, I&gt;</h4></section></summary><div class="docblock"><p>Iterate over all of the matches in the order that they were found, with options.</p>
<p>Each match contains the index of the pattern that matched, and a list of
captures. Because multiple patterns can match the same set of nodes,
one match may contain captures that appear <em>before</em> some of the
captures from a previous match.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.captures" class="method"><a class="src rightside" href="../src/tree_sitter/lib.rs.html#3150-3168">source</a><h4 class="code-header">pub fn <a href="#method.captures" class="fn">captures</a>&lt;'query, 'cursor: 'query, 'tree, T: <a class="trait" href="trait.TextProvider.html" title="trait tree_sitter::TextProvider">TextProvider</a>&lt;I&gt;, I: <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;[<a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.u8.html">u8</a>]&gt;&gt;(
&amp;'cursor mut self,
query: &amp;'query <a class="struct" href="struct.Query.html" title="struct tree_sitter::Query">Query</a>,
node: <a class="struct" href="struct.Node.html" title="struct tree_sitter::Node">Node</a>&lt;'tree&gt;,
text_provider: T
) -&gt; <a class="struct" href="struct.QueryCaptures.html" title="struct tree_sitter::QueryCaptures">QueryCaptures</a>&lt;'query, 'tree, T, I&gt;</h4></section></summary><div class="docblock"><p>Iterate over all of the individual captures in the order that they
appear.</p>
<p>This is useful if you dont care about which pattern matched, and just
want a single, ordered sequence of captures.</p>
<p>Iterating over a <code>QueryCaptures</code> object requires the <code>StreamingIterator</code>
or <code>StreamingIteratorMut</code> trait to be in scope. This can be done via
<code>use tree_sitter::StreamingIterator</code> or <code>use tree_sitter::StreamingIteratorMut</code></p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.captures_with_options" class="method"><a class="src rightside" href="../src/tree_sitter/lib.rs.html#3176-3224">source</a><h4 class="code-header">pub fn <a href="#method.captures_with_options" class="fn">captures_with_options</a>&lt;'query, 'cursor: 'query, 'tree, T: <a class="trait" href="trait.TextProvider.html" title="trait tree_sitter::TextProvider">TextProvider</a>&lt;I&gt;, I: <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;[<a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.u8.html">u8</a>]&gt;&gt;(
&amp;'cursor mut self,
query: &amp;'query <a class="struct" href="struct.Query.html" title="struct tree_sitter::Query">Query</a>,
node: <a class="struct" href="struct.Node.html" title="struct tree_sitter::Node">Node</a>&lt;'tree&gt;,
text_provider: T,
options: <a class="struct" href="struct.QueryCursorOptions.html" title="struct tree_sitter::QueryCursorOptions">QueryCursorOptions</a>&lt;'_&gt;
) -&gt; <a class="struct" href="struct.QueryCaptures.html" title="struct tree_sitter::QueryCaptures">QueryCaptures</a>&lt;'query, 'tree, T, I&gt;</h4></section></summary><div class="docblock"><p>Iterate over all of the individual captures in the order that they
appear, with options.</p>
<p>This is useful if you dont care about which pattern matched, and just
want a single, ordered sequence of captures.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.set_byte_range" class="method"><a class="src rightside" href="../src/tree_sitter/lib.rs.html#3229-3238">source</a><h4 class="code-header">pub fn <a href="#method.set_byte_range" class="fn">set_byte_range</a>(&amp;mut self, range: <a class="struct" href="https://doc.rust-lang.org/1.76.0/core/ops/range/struct.Range.html" title="struct core::ops::range::Range">Range</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.usize.html">usize</a>&gt;) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.reference.html">&amp;mut Self</a></h4></section></summary><div class="docblock"><p>Set the range in which the query will be executed, in terms of byte
offsets.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.set_point_range" class="method"><a class="src rightside" href="../src/tree_sitter/lib.rs.html#3243-3252">source</a><h4 class="code-header">pub fn <a href="#method.set_point_range" class="fn">set_point_range</a>(&amp;mut self, range: <a class="struct" href="https://doc.rust-lang.org/1.76.0/core/ops/range/struct.Range.html" title="struct core::ops::range::Range">Range</a>&lt;<a class="struct" href="struct.Point.html" title="struct tree_sitter::Point">Point</a>&gt;) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.reference.html">&amp;mut Self</a></h4></section></summary><div class="docblock"><p>Set the range in which the query will be executed, in terms of rows and
columns.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.set_max_start_depth" class="method"><a class="src rightside" href="../src/tree_sitter/lib.rs.html#3269-3277">source</a><h4 class="code-header">pub fn <a href="#method.set_max_start_depth" class="fn">set_max_start_depth</a>(&amp;mut self, max_start_depth: <a class="enum" href="https://doc.rust-lang.org/1.76.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.u32.html">u32</a>&gt;) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.reference.html">&amp;mut Self</a></h4></section></summary><div class="docblock"><p>Set the maximum start depth for a query cursor.</p>
<p>This prevents cursors from exploring children nodes at a certain depth.
Note if a pattern includes many children, then they will still be
checked.</p>
<p>The zero max start depth value can be used as a special behavior and
it helps to destructure a subtree by staying on a node and using
captures for interested parts. Note that the zero max start depth
only limit a search depth for a patterns root node but other nodes
that are parts of the pattern may be searched at any depth what
defined by the pattern structure.</p>
<p>Set to <code>None</code> to remove the maximum start depth.</p>
</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Default-for-QueryCursor" class="impl"><a class="src rightside" href="../src/tree_sitter/lib.rs.html#2981-2985">source</a><a href="#impl-Default-for-QueryCursor" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/default/trait.Default.html" title="trait core::default::Default">Default</a> for <a class="struct" href="struct.QueryCursor.html" title="struct tree_sitter::QueryCursor">QueryCursor</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.default" class="method trait-impl"><a class="src rightside" href="../src/tree_sitter/lib.rs.html#2982-2984">source</a><a href="#method.default" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.76.0/core/default/trait.Default.html#tymethod.default" class="fn">default</a>() -&gt; Self</h4></section></summary><div class='docblock'>Returns the “default value” for a type. <a href="https://doc.rust-lang.org/1.76.0/core/default/trait.Default.html#tymethod.default">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Drop-for-QueryCursor" class="impl"><a class="src rightside" href="../src/tree_sitter/lib.rs.html#3598-3602">source</a><a href="#impl-Drop-for-QueryCursor" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html" title="trait core::ops::drop::Drop">Drop</a> for <a class="struct" href="struct.QueryCursor.html" title="struct tree_sitter::QueryCursor">QueryCursor</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.drop" class="method trait-impl"><a class="src rightside" href="../src/tree_sitter/lib.rs.html#3599-3601">source</a><a href="#method.drop" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html#tymethod.drop" class="fn">drop</a>(&amp;mut self)</h4></section></summary><div class='docblock'>Executes the destructor for this type. <a href="https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html#tymethod.drop">Read more</a></div></details></div></details><section id="impl-Send-for-QueryCursor" class="impl"><a class="src rightside" href="../src/tree_sitter/lib.rs.html#3930">source</a><a href="#impl-Send-for-QueryCursor" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.QueryCursor.html" title="struct tree_sitter::QueryCursor">QueryCursor</a></h3></section><section id="impl-Sync-for-QueryCursor" class="impl"><a class="src rightside" href="../src/tree_sitter/lib.rs.html#3931">source</a><a href="#impl-Sync-for-QueryCursor" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.QueryCursor.html" title="struct tree_sitter::QueryCursor">QueryCursor</a></h3></section></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-QueryCursor" class="impl"><a href="#impl-RefUnwindSafe-for-QueryCursor" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.QueryCursor.html" title="struct tree_sitter::QueryCursor">QueryCursor</a></h3></section><section id="impl-Unpin-for-QueryCursor" class="impl"><a href="#impl-Unpin-for-QueryCursor" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.QueryCursor.html" title="struct tree_sitter::QueryCursor">QueryCursor</a></h3></section><section id="impl-UnwindSafe-for-QueryCursor" class="impl"><a href="#impl-UnwindSafe-for-QueryCursor" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.QueryCursor.html" title="struct tree_sitter::QueryCursor">QueryCursor</a></h3></section></div><h2 id="blanket-implementations" class="section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/any.rs.html#140">source</a><a href="#impl-Any-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<div class="where">where
T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.76.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&amp;self) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.76.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.76.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/borrow.rs.html#208">source</a><a href="#impl-Borrow%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a>&lt;T&gt; for T<div class="where">where
T: ?<a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.76.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.reference.html">&amp;T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.76.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/borrow.rs.html#216">source</a><a href="#impl-BorrowMut%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a>&lt;T&gt; for T<div class="where">where
T: ?<a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.76.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.reference.html">&amp;mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.76.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/convert/mod.rs.html#763">source</a><a href="#impl-From%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt; for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/convert/mod.rs.html#766">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.76.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -&gt; T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p>
</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Into%3CU%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/convert/mod.rs.html#747-749">source</a><a href="#impl-Into%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;U&gt; for T<div class="where">where
U: <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt;,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/convert/mod.rs.html#756">source</a><a href="#method.into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.76.0/core/convert/trait.Into.html#tymethod.into" class="fn">into</a>(self) -&gt; U</h4></section></summary><div class="docblock"><p>Calls <code>U::from(self)</code>.</p>
<p>That is, this conversion is whatever the implementation of
<code><a href="https://doc.rust-lang.org/1.76.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt; for U</code> chooses to do.</p>
</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryFrom%3CU%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/convert/mod.rs.html#803-805">source</a><a href="#impl-TryFrom%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;U&gt; for T<div class="where">where
U: <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;T&gt;,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl"><a href="#associatedtype.Error" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.76.0/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = <a class="enum" href="https://doc.rust-lang.org/1.76.0/core/convert/enum.Infallible.html" title="enum core::convert::Infallible">Infallible</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/convert/mod.rs.html#810">source</a><a href="#method.try_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.76.0/core/convert/trait.TryFrom.html#tymethod.try_from" class="fn">try_from</a>(value: U) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.76.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;T, &lt;T as <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;U&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/1.76.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>&gt;</h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryInto%3CU%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/convert/mod.rs.html#788-790">source</a><a href="#impl-TryInto%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a>&lt;U&gt; for T<div class="where">where
U: <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error-1" class="associatedtype trait-impl"><a href="#associatedtype.Error-1" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.76.0/core/convert/trait.TryInto.html#associatedtype.Error" class="associatedtype">Error</a> = &lt;U as <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/1.76.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/convert/mod.rs.html#795">source</a><a href="#method.try_into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.76.0/core/convert/trait.TryInto.html#tymethod.try_into" class="fn">try_into</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.76.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;U, &lt;U as <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/1.76.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>&gt;</h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details></div></section></div></main></body></html>