Adding large folders

This commit is contained in:
2026-02-26 12:00:21 -05:00
parent 5400d82acd
commit 49701c85ad
47332 changed files with 1942573 additions and 0 deletions

View File

@@ -0,0 +1 @@
<!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="List of all items in this crate"><title>List of all items in this crate</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Italic-81dc35de.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-MediumItalic-ccf7e434.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2"href="../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../static.files/rustdoc-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="synstructure" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.js" data-settings-js="settings-c38705f0.js" ><script src="../static.files/storage-e2aeef58.js"></script><script defer src="../static.files/main-a410ff4d.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-263c88ec.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-eab170b8.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-044be391.svg"></head><body class="rustdoc mod sys"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><rustdoc-topbar><h2><a href="#">All</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../synstructure/index.html">synstructure</a><span class="version">0.13.2</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h3><a href="#macros">Crate Items</a></h3><ul class="block"><li><a href="#macros" title="Macros">Macros</a></li><li><a href="#structs" title="Structs">Structs</a></li><li><a href="#enums" title="Enums">Enums</a></li><li><a href="#traits" title="Traits">Traits</a></li><li><a href="#functions" title="Functions">Functions</a></li></ul></section><div id="rustdoc-modnav"></div></div></nav><div class="sidebar-resizer" title="Drag to resize sidebar"></div><main><div class="width-limiter"><section id="main-content" class="content"><div class="main-heading"><h1>List of all items</h1><rustdoc-toolbar></rustdoc-toolbar></div><h3 id="structs">Structs</h3><ul class="all-items"><li><a href="struct.BindingInfo.html">BindingInfo</a></li><li><a href="struct.Structure.html">Structure</a></li><li><a href="struct.VariantAst.html">VariantAst</a></li><li><a href="struct.VariantInfo.html">VariantInfo</a></li></ul><h3 id="enums">Enums</h3><ul class="all-items"><li><a href="enum.AddBounds.html">AddBounds</a></li><li><a href="enum.BindStyle.html">BindStyle</a></li></ul><h3 id="traits">Traits</h3><ul class="all-items"><li><a href="trait.MacroResult.html">MacroResult</a></li></ul><h3 id="macros">Macros</h3><ul class="all-items"><li><a href="macro.decl_attribute.html">decl_attribute</a></li><li><a href="macro.decl_derive.html">decl_derive</a></li><li><a href="macro.test_derive.html">test_derive</a></li></ul><h3 id="functions">Functions</h3><ul class="all-items"><li><a href="fn.unpretty_print.html">unpretty_print</a></li></ul></section></div></main></body></html>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,37 @@
<!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="Dumps an unpretty version of a tokenstream. Takes any type which implements `Display`."><title>unpretty_print in synstructure - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Italic-81dc35de.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-MediumItalic-ccf7e434.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2"href="../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../static.files/rustdoc-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="synstructure" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.js" data-settings-js="settings-c38705f0.js" ><script src="../static.files/storage-e2aeef58.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-a410ff4d.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-263c88ec.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-eab170b8.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-044be391.svg"></head><body class="rustdoc fn"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><rustdoc-topbar><h2><a href="#">unpretty_print</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../synstructure/index.html">synstructure</a><span class="version">0.13.2</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">unpretty_<wbr>print</a></h2><h3><a href="#">Sections</a></h3><ul class="block top-toc"><li><a href="#stability" title="Stability">Stability</a></li><li><a href="#example" title="Example">Example</a></li></ul></section><div id="rustdoc-modnav"><h2 class="in-crate"><a href="index.html">In crate synstructure</a></h2></div></div></nav><div class="sidebar-resizer" title="Drag to resize sidebar"></div><main><div class="width-limiter"><section id="main-content" class="content"><div class="main-heading"><div class="rustdoc-breadcrumbs"><a href="index.html">synstructure</a></div><h1>Function <span class="fn">unpretty_<wbr>print</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../src/synstructure/lib.rs.html#2433-2454">Source</a> </span></div><pre class="rust item-decl"><code>pub fn unpretty_print&lt;T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/fmt/trait.Display.html" title="trait core::fmt::Display">Display</a>&gt;(ts: T) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a></code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Dumps an unpretty version of a tokenstream. Takes any type which implements
<code>Display</code>.</p>
<p>This is mostly useful for visualizing the output of a procedural macro, as
it makes it marginally more readable. It is used in the implementation of
<code>test_derive!</code> to unprettily print the output.</p>
<h2 id="stability"><a class="doc-anchor" href="#stability">§</a>Stability</h2>
<p>The stability of the output of this function is not guaranteed. Do not
assert that the output of this function does not change between minor
versions.</p>
<h2 id="example"><a class="doc-anchor" href="#example">§</a>Example</h2>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="macro">assert_eq!</span>(
synstructure::unpretty_print(<span class="macro">quote!</span> {
<span class="kw">const _</span>: () = {
<span class="kw">extern crate </span>krate;
<span class="kw">impl</span>&lt;T, U&gt; krate::Trait <span class="kw">for </span>A&lt;T, U&gt;
<span class="kw">where
</span><span class="prelude-ty">Option</span>&lt;U&gt;: krate::Trait,
U: krate::Trait
{
<span class="kw">fn </span>a() {}
}
};
}),
<span class="string">"const _ : (
)
= {
extern crate krate ;
impl &lt; T , U &gt; krate :: Trait for A &lt; T , U &gt; where Option &lt; U &gt; : krate :: Trait , U : krate :: Trait {
fn a (
)
{
}
}
}
;
"
</span>)</code></pre></div></div></details></section></div></main></body></html>

View File

@@ -0,0 +1,140 @@
<!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="This crate provides helper types for matching against enum variants, and extracting bindings to each of the fields in the deriving Struct or Enum in a generic way."><title>synstructure - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Italic-81dc35de.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-MediumItalic-ccf7e434.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2"href="../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../static.files/rustdoc-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="synstructure" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.js" data-settings-js="settings-c38705f0.js" ><script src="../static.files/storage-e2aeef58.js"></script><script defer src="../crates.js"></script><script defer src="../static.files/main-a410ff4d.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-263c88ec.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-eab170b8.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-044be391.svg"></head><body class="rustdoc mod crate"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><rustdoc-topbar><h2><a href="#">Crate synstructure</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../synstructure/index.html">synstructure</a><span class="version">0.13.2</span></h2></div><div class="sidebar-elems"><ul class="block"><li><a id="all-types" href="all.html">All Items</a></li></ul><section id="rustdoc-toc"><h3><a href="#">Sections</a></h3><ul class="block top-toc"><li><a href="#example-walkfields" title="Example: `WalkFields`">Example: <code>WalkFields</code></a><ul><li><a href="#trait-implementation" title="Trait Implementation">Trait Implementation</a></li><li><a href="#custom-derive" title="Custom Derive">Custom Derive</a></li></ul></li><li><a href="#example-interest" title="Example: `Interest`">Example: <code>Interest</code></a><ul><li><a href="#trait-implementation-1" title="Trait Implementation">Trait Implementation</a></li><li><a href="#custom-derive-1" title="Custom Derive">Custom Derive</a></li></ul></li></ul><h3><a href="#macros">Crate Items</a></h3><ul class="block"><li><a href="#macros" title="Macros">Macros</a></li><li><a href="#structs" title="Structs">Structs</a></li><li><a href="#enums" title="Enums">Enums</a></li><li><a href="#traits" title="Traits">Traits</a></li><li><a href="#functions" title="Functions">Functions</a></li></ul></section><div id="rustdoc-modnav"></div></div></nav><div class="sidebar-resizer" title="Drag to resize sidebar"></div><main><div class="width-limiter"><section id="main-content" class="content"><div class="main-heading"><h1>Crate <span>synstructure</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../src/synstructure/lib.rs.html#1-2559">Source</a> </span></div><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>This crate provides helper types for matching against enum variants, and
extracting bindings to each of the fields in the deriving Struct or Enum in
a generic way.</p>
<p>If you are writing a <code>#[derive]</code> which needs to perform some operation on
every field, then you have come to the right place!</p>
<h2 id="example-walkfields"><a class="doc-anchor" href="#example-walkfields">§</a>Example: <code>WalkFields</code></h2><h4 id="trait-implementation"><a class="doc-anchor" href="#trait-implementation">§</a>Trait Implementation</h4>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">pub trait </span>WalkFields: std::any::Any {
<span class="kw">fn </span>walk_fields(<span class="kw-2">&amp;</span><span class="self">self</span>, walk: <span class="kw-2">&amp;mut </span>FnMut(<span class="kw-2">&amp;</span>WalkFields));
}
<span class="kw">impl </span>WalkFields <span class="kw">for </span>i32 {
<span class="kw">fn </span>walk_fields(<span class="kw-2">&amp;</span><span class="self">self</span>, _walk: <span class="kw-2">&amp;mut </span>FnMut(<span class="kw-2">&amp;</span>WalkFields)) {}
}</code></pre></div><h4 id="custom-derive"><a class="doc-anchor" href="#custom-derive">§</a>Custom Derive</h4>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">fn </span>walkfields_derive(s: synstructure::Structure) -&gt; proc_macro2::TokenStream {
<span class="kw">let </span>body = s.each(|bi| <span class="macro">quote!</span>{
walk(#bi)
});
s.gen_impl(<span class="macro">quote!</span> {
<span class="kw">extern crate </span>synstructure_test_traits;
<span class="kw">gen impl </span>synstructure_test_traits::WalkFields <span class="kw">for </span>@<span class="self">Self </span>{
<span class="kw">fn </span>walk_fields(<span class="kw-2">&amp;</span><span class="self">self</span>, walk: <span class="kw-2">&amp;mut </span>FnMut(<span class="kw-2">&amp;</span>synstructure_test_traits::WalkFields)) {
<span class="kw">match </span><span class="kw-2">*</span><span class="self">self </span>{ #body }
}
}
})
}
<span class="macro">synstructure::decl_derive!</span>([WalkFields] =&gt; walkfields_derive);
<span class="comment">/*
* Test Case
*/
</span><span class="kw">fn </span>main() {
<span class="macro">synstructure::test_derive!</span> {
walkfields_derive {
<span class="kw">enum </span>A&lt;T&gt; {
B(i32, T),
C(i32),
}
}
expands to {
<span class="kw">const _</span>: () = {
<span class="kw">extern crate </span>synstructure_test_traits;
<span class="kw">impl</span>&lt;T&gt; synstructure_test_traits::WalkFields <span class="kw">for </span>A&lt;T&gt;
<span class="kw">where </span>T: synstructure_test_traits::WalkFields
{
<span class="kw">fn </span>walk_fields(<span class="kw-2">&amp;</span><span class="self">self</span>, walk: <span class="kw-2">&amp;mut </span>FnMut(<span class="kw-2">&amp;</span>synstructure_test_traits::WalkFields)) {
<span class="kw">match </span><span class="kw-2">*</span><span class="self">self </span>{
A::B(<span class="kw-2">ref </span>__binding_0, <span class="kw-2">ref </span>__binding_1,) =&gt; {
{ walk(__binding_0) }
{ walk(__binding_1) }
}
A::C(<span class="kw-2">ref </span>__binding_0,) =&gt; {
{ walk(__binding_0) }
}
}
}
}
};
}
}
}</code></pre></div><h2 id="example-interest"><a class="doc-anchor" href="#example-interest">§</a>Example: <code>Interest</code></h2><h4 id="trait-implementation-1"><a class="doc-anchor" href="#trait-implementation-1">§</a>Trait Implementation</h4>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">pub trait </span>Interest {
<span class="kw">fn </span>interesting(<span class="kw-2">&amp;</span><span class="self">self</span>) -&gt; bool;
}
<span class="kw">impl </span>Interest <span class="kw">for </span>i32 {
<span class="kw">fn </span>interesting(<span class="kw-2">&amp;</span><span class="self">self</span>) -&gt; bool { <span class="kw-2">*</span><span class="self">self </span>&gt; <span class="number">0 </span>}
}</code></pre></div><h4 id="custom-derive-1"><a class="doc-anchor" href="#custom-derive-1">§</a>Custom Derive</h4>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">fn </span>interest_derive(<span class="kw-2">mut </span>s: synstructure::Structure) -&gt; proc_macro2::TokenStream {
<span class="kw">let </span>body = s.fold(<span class="bool-val">false</span>, |acc, bi| <span class="macro">quote!</span>{
#acc || synstructure_test_traits::Interest::interesting(#bi)
});
s.gen_impl(<span class="macro">quote!</span> {
<span class="kw">extern crate </span>synstructure_test_traits;
<span class="kw">gen impl </span>synstructure_test_traits::Interest <span class="kw">for </span>@<span class="self">Self </span>{
<span class="kw">fn </span>interesting(<span class="kw-2">&amp;</span><span class="self">self</span>) -&gt; bool {
<span class="kw">match </span><span class="kw-2">*</span><span class="self">self </span>{
#body
}
}
}
})
}
<span class="macro">synstructure::decl_derive!</span>([Interest] =&gt; interest_derive);
<span class="comment">/*
* Test Case
*/
</span><span class="kw">fn </span>main() {
<span class="macro">synstructure::test_derive!</span>{
interest_derive {
<span class="kw">enum </span>A&lt;T&gt; {
B(i32, T),
C(i32),
}
}
expands to {
<span class="kw">const _</span>: () = {
<span class="kw">extern crate </span>synstructure_test_traits;
<span class="kw">impl</span>&lt;T&gt; synstructure_test_traits::Interest <span class="kw">for </span>A&lt;T&gt;
<span class="kw">where </span>T: synstructure_test_traits::Interest
{
<span class="kw">fn </span>interesting(<span class="kw-2">&amp;</span><span class="self">self</span>) -&gt; bool {
<span class="kw">match </span><span class="kw-2">*</span><span class="self">self </span>{
A::B(<span class="kw-2">ref </span>__binding_0, <span class="kw-2">ref </span>__binding_1,) =&gt; {
<span class="bool-val">false </span>||
synstructure_test_traits::Interest::interesting(__binding_0) ||
synstructure_test_traits::Interest::interesting(__binding_1)
}
A::C(<span class="kw-2">ref </span>__binding_0,) =&gt; {
<span class="bool-val">false </span>||
synstructure_test_traits::Interest::interesting(__binding_0)
}
}
}
}
};
}
}
}</code></pre></div>
<p>For more example usage, consider investigating the <code>abomonation_derive</code> crate,
which makes use of this crate, and is fairly simple.</p>
</div></details><h2 id="macros" class="section-header">Macros<a href="#macros" class="anchor">§</a></h2><dl class="item-table"><dt><a class="macro" href="macro.decl_attribute.html" title="macro synstructure::decl_attribute">decl_<wbr>attribute</a></dt><dd>The <code>decl_attribute!</code> macro declares a custom attribute wrapper. It will
parse the incoming <code>TokenStream</code> into a <code>synstructure::Structure</code> object,
and pass it into the inner function.</dd><dt><a class="macro" href="macro.decl_derive.html" title="macro synstructure::decl_derive">decl_<wbr>derive</a></dt><dd>The <code>decl_derive!</code> macro declares a custom derive wrapper. It will parse the
incoming <code>TokenStream</code> into a <code>synstructure::Structure</code> object, and pass it
into the inner function.</dd><dt><a class="macro" href="macro.test_derive.html" title="macro synstructure::test_derive">test_<wbr>derive</a></dt><dd>Run a test on a custom derive. This macro expands both the original struct
and the expansion to ensure that they compile correctly, and confirms that
feeding the original struct into the named derive will produce the written
output.</dd></dl><h2 id="structs" class="section-header">Structs<a href="#structs" class="anchor">§</a></h2><dl class="item-table"><dt><a class="struct" href="struct.BindingInfo.html" title="struct synstructure::BindingInfo">Binding<wbr>Info</a></dt><dd>Information about a specific binding. This contains both an <code>Ident</code>
reference to the given field, and the syn <code>&amp;'a Field</code> descriptor for that
field.</dd><dt><a class="struct" href="struct.Structure.html" title="struct synstructure::Structure">Structure</a></dt><dd>A wrapper around a <code>syn::DeriveInput</code> which provides utilities for creating
custom derive trait implementations.</dd><dt><a class="struct" href="struct.VariantAst.html" title="struct synstructure::VariantAst">Variant<wbr>Ast</a></dt><dd>This type is similar to <code>syn</code>s <code>Variant</code> type, however each of the fields
are references rather than owned. When this is used as the AST for a real
variant, this struct simply borrows the fields of the <code>syn::Variant</code>,
however this type may also be used as the sole variant for a struct.</dd><dt><a class="struct" href="struct.VariantInfo.html" title="struct synstructure::VariantInfo">Variant<wbr>Info</a></dt><dd>A wrapper around a <code>syn::DeriveInput</code>s variant which provides utilities
for destructuring <code>Variant</code>s with <code>match</code> expressions.</dd></dl><h2 id="enums" class="section-header">Enums<a href="#enums" class="anchor">§</a></h2><dl class="item-table"><dt><a class="enum" href="enum.AddBounds.html" title="enum synstructure::AddBounds">AddBounds</a></dt><dd>Changes how bounds are added</dd><dt><a class="enum" href="enum.BindStyle.html" title="enum synstructure::BindStyle">Bind<wbr>Style</a></dt><dd>The type of binding to use when generating a pattern.</dd></dl><h2 id="traits" class="section-header">Traits<a href="#traits" class="anchor">§</a></h2><dl class="item-table"><dt><a class="trait" href="trait.MacroResult.html" title="trait synstructure::MacroResult">Macro<wbr>Result</a></dt><dd>Helper trait describing values which may be returned by macro implementation
methods used by this crates macros.</dd></dl><h2 id="functions" class="section-header">Functions<a href="#functions" class="anchor">§</a></h2><dl class="item-table"><dt><a class="fn" href="fn.unpretty_print.html" title="fn synstructure::unpretty_print">unpretty_<wbr>print</a></dt><dd>Dumps an unpretty version of a tokenstream. Takes any type which implements
<code>Display</code>.</dd></dl></section></div></main></body></html>

View File

@@ -0,0 +1,11 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="refresh" content="0;URL=macro.decl_attribute.html">
<title>Redirection</title>
</head>
<body>
<p>Redirecting to <a href="macro.decl_attribute.html">macro.decl_attribute.html</a>...</p>
<script>location.replace("macro.decl_attribute.html" + location.search + location.hash);</script>
</body>
</html>

View File

@@ -0,0 +1,24 @@
<!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="The `decl_attribute!` macro declares a custom attribute wrapper. It will parse the incoming `TokenStream` into a `synstructure::Structure` object, and pass it into the inner function."><title>decl_attribute in synstructure - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Italic-81dc35de.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-MediumItalic-ccf7e434.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2"href="../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../static.files/rustdoc-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="synstructure" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.js" data-settings-js="settings-c38705f0.js" ><script src="../static.files/storage-e2aeef58.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-a410ff4d.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-263c88ec.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-eab170b8.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-044be391.svg"></head><body class="rustdoc macro"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><rustdoc-topbar><h2><a href="#">decl_attribute</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../synstructure/index.html">synstructure</a><span class="version">0.13.2</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">decl_<wbr>attribute</a></h2><h3><a href="#">Sections</a></h3><ul class="block top-toc"><li><a href="#usage" title="Usage">Usage</a></li></ul></section><div id="rustdoc-modnav"><h2 class="in-crate"><a href="index.html">In crate synstructure</a></h2></div></div></nav><div class="sidebar-resizer" title="Drag to resize sidebar"></div><main><div class="width-limiter"><section id="main-content" class="content"><div class="main-heading"><div class="rustdoc-breadcrumbs"><a href="index.html">synstructure</a></div><h1>Macro <span class="macro">decl_<wbr>attribute</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../src/synstructure/macros.rs.html#152-177">Source</a> </span></div><pre class="rust item-decl"><code>macro_rules! decl_attribute {
([$attribute:ident] =&gt; $(#[$($attrs:tt)*])* $inner:path) =&gt; { ... };
}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>The <code>decl_attribute!</code> macro declares a custom attribute wrapper. It will
parse the incoming <code>TokenStream</code> into a <code>synstructure::Structure</code> object,
and pass it into the inner function.</p>
<p>Your inner function should have the following type:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">fn </span>attribute(
attr: proc_macro2::TokenStream,
structure: synstructure::Structure,
) -&gt; proc_macro2::TokenStream {
<span class="macro">unimplemented!</span>()
}</code></pre></div><h2 id="usage"><a class="doc-anchor" href="#usage">§</a>Usage</h2>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">fn </span>attribute_interesting(
_attr: proc_macro2::TokenStream,
_structure: synstructure::Structure,
) -&gt; proc_macro2::TokenStream {
<span class="macro">quote::quote!</span> { ... }
}
<span class="macro">decl_attribute!</span>([interesting] =&gt; attribute_interesting);</code></pre></div>
<p><em>This macro is available if <code>synstructure</code> is built with the <code>"proc-macro"</code>
feature.</em></p>
</div></details></section></div></main></body></html>

View File

@@ -0,0 +1,11 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="refresh" content="0;URL=macro.decl_derive.html">
<title>Redirection</title>
</head>
<body>
<p>Redirecting to <a href="macro.decl_derive.html">macro.decl_derive.html</a>...</p>
<script>location.replace("macro.decl_derive.html" + location.search + location.hash);</script>
</body>
</html>

View File

@@ -0,0 +1,40 @@
<!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="The `decl_derive!` macro declares a custom derive wrapper. It will parse the incoming `TokenStream` into a `synstructure::Structure` object, and pass it into the inner function."><title>decl_derive in synstructure - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Italic-81dc35de.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-MediumItalic-ccf7e434.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2"href="../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../static.files/rustdoc-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="synstructure" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.js" data-settings-js="settings-c38705f0.js" ><script src="../static.files/storage-e2aeef58.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-a410ff4d.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-263c88ec.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-eab170b8.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-044be391.svg"></head><body class="rustdoc macro"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><rustdoc-topbar><h2><a href="#">decl_derive</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../synstructure/index.html">synstructure</a><span class="version">0.13.2</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">decl_<wbr>derive</a></h2><h3><a href="#">Sections</a></h3><ul class="block top-toc"><li><a href="#usage" title="Usage">Usage</a><ul><li><a href="#without-attributes" title="Without Attributes">Without Attributes</a></li><li><a href="#with-attributes" title="With Attributes">With Attributes</a></li><li><a href="#decl-attributes--doc-comments" title="Decl Attributes &#38; Doc Comments">Decl Attributes &amp; Doc Comments</a></li></ul></li></ul></section><div id="rustdoc-modnav"><h2 class="in-crate"><a href="index.html">In crate synstructure</a></h2></div></div></nav><div class="sidebar-resizer" title="Drag to resize sidebar"></div><main><div class="width-limiter"><section id="main-content" class="content"><div class="main-heading"><div class="rustdoc-breadcrumbs"><a href="index.html">synstructure</a></div><h1>Macro <span class="macro">decl_<wbr>derive</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../src/synstructure/macros.rs.html#89-113">Source</a> </span></div><pre class="rust item-decl"><code>macro_rules! decl_derive {
([$derives:ident $($derive_t:tt)*] =&gt; $(#[$($attrs:tt)*])* $inner:path) =&gt; { ... };
}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>The <code>decl_derive!</code> macro declares a custom derive wrapper. It will parse the
incoming <code>TokenStream</code> into a <code>synstructure::Structure</code> object, and pass it
into the inner function.</p>
<p>Your inner function should take a <code>synstructure::Structure</code> by value, and
return a type implementing <code>synstructure::MacroResult</code>, for example:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">fn </span>derive_simple(input: synstructure::Structure) -&gt; proc_macro2::TokenStream {
<span class="macro">unimplemented!</span>()
}
<span class="kw">fn </span>derive_result(input: synstructure::Structure)
-&gt; syn::Result&lt;proc_macro2::TokenStream&gt;
{
<span class="macro">unimplemented!</span>()
}</code></pre></div><h2 id="usage"><a class="doc-anchor" href="#usage">§</a>Usage</h2><h4 id="without-attributes"><a class="doc-anchor" href="#without-attributes">§</a>Without Attributes</h4>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">fn </span>derive_interesting(_input: synstructure::Structure) -&gt; proc_macro2::TokenStream {
<span class="macro">quote::quote!</span> { ... }
}
<span class="macro">decl_derive!</span>([Interesting] =&gt; derive_interesting);</code></pre></div><h4 id="with-attributes"><a class="doc-anchor" href="#with-attributes">§</a>With Attributes</h4>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">fn </span>derive_interesting(_input: synstructure::Structure) -&gt; proc_macro2::TokenStream {
<span class="macro">quote::quote!</span> { ... }
}
<span class="macro">decl_derive!</span>([Interesting, attributes(interesting_ignore)] =&gt; derive_interesting);</code></pre></div><h4 id="decl-attributes--doc-comments"><a class="doc-anchor" href="#decl-attributes--doc-comments">§</a>Decl Attributes &amp; Doc Comments</h4>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">fn </span>derive_interesting(_input: synstructure::Structure) -&gt; proc_macro2::TokenStream {
<span class="macro">quote::quote!</span> { ... }
}
<span class="macro">decl_derive!</span> {
[Interesting] =&gt;
<span class="attr">#[allow(some_lint)]
</span><span class="doccomment">/// Documentation Comments
</span>derive_interesting
}</code></pre></div>
<p><em>This macro is available if <code>synstructure</code> is built with the <code>"proc-macro"</code>
feature.</em></p>
</div></details></section></div></main></body></html>

View File

@@ -0,0 +1,11 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="refresh" content="0;URL=macro.test_derive.html">
<title>Redirection</title>
</head>
<body>
<p>Redirecting to <a href="macro.test_derive.html">macro.test_derive.html</a>...</p>
<script>location.replace("macro.test_derive.html" + location.search + location.hash);</script>
</body>
</html>

View File

@@ -0,0 +1,28 @@
<!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="Run a test on a custom derive. This macro expands both the original struct and the expansion to ensure that they compile correctly, and confirms that feeding the original struct into the named derive will produce the written output."><title>test_derive in synstructure - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Italic-81dc35de.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-MediumItalic-ccf7e434.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2"href="../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../static.files/rustdoc-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="synstructure" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.js" data-settings-js="settings-c38705f0.js" ><script src="../static.files/storage-e2aeef58.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-a410ff4d.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-263c88ec.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-eab170b8.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-044be391.svg"></head><body class="rustdoc macro"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><rustdoc-topbar><h2><a href="#">test_derive</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../synstructure/index.html">synstructure</a><span class="version">0.13.2</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">test_<wbr>derive</a></h2><h3><a href="#">Sections</a></h3><ul class="block top-toc"><li><a href="#usage" title="Usage">Usage</a></li></ul></section><div id="rustdoc-modnav"><h2 class="in-crate"><a href="index.html">In crate synstructure</a></h2></div></div></nav><div class="sidebar-resizer" title="Drag to resize sidebar"></div><main><div class="width-limiter"><section id="main-content" class="content"><div class="main-heading"><div class="rustdoc-breadcrumbs"><a href="index.html">synstructure</a></div><h1>Macro <span class="macro">test_<wbr>derive</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../src/synstructure/macros.rs.html#210-262">Source</a> </span></div><pre class="rust item-decl"><code>macro_rules! test_derive {
($name:path { $($i:tt)* } expands to { $($o:tt)* }) =&gt; { ... };
($name:path { $($i:tt)* } expands to { $($o:tt)* } no_build) =&gt; { ... };
}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Run a test on a custom derive. This macro expands both the original struct
and the expansion to ensure that they compile correctly, and confirms that
feeding the original struct into the named derive will produce the written
output.</p>
<p>You can add <code>no_build</code> to the end of the macro invocation to disable
checking that the written code compiles. This is useful in contexts where
the procedural macro cannot depend on the crate where it is used during
tests.</p>
<h2 id="usage"><a class="doc-anchor" href="#usage">§</a>Usage</h2>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">fn </span>test_derive_example(_s: synstructure::Structure)
-&gt; <span class="prelude-ty">Result</span>&lt;proc_macro2::TokenStream, syn::Error&gt;
{
<span class="prelude-val">Ok</span>(<span class="macro">quote::quote!</span> { <span class="kw">const </span>YOUR_OUTPUT: <span class="kw-2">&amp;</span><span class="lifetime">'static </span>str = <span class="string">"here"</span>; })
}
<span class="kw">fn </span>main() {
<span class="macro">synstructure::test_derive!</span>{
test_derive_example {
<span class="kw">struct </span>A;
}
expands to {
<span class="kw">const </span>YOUR_OUTPUT: <span class="kw-2">&amp;</span><span class="lifetime">'static </span>str = <span class="string">"here"</span>;
}
}
}</code></pre></div></div></details></section></div></main></body></html>

View File

@@ -0,0 +1 @@
window.SIDEBAR_ITEMS = {"enum":["AddBounds","BindStyle"],"fn":["unpretty_print"],"macro":["decl_attribute","decl_derive","test_derive"],"struct":["BindingInfo","Structure","VariantAst","VariantInfo"],"trait":["MacroResult"]};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,18 @@
<!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="Helper trait describing values which may be returned by macro implementation methods used by this crates macros."><title>MacroResult in synstructure - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Italic-81dc35de.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-MediumItalic-ccf7e434.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2"href="../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../static.files/rustdoc-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="synstructure" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.js" data-settings-js="settings-c38705f0.js" ><script src="../static.files/storage-e2aeef58.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-a410ff4d.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-263c88ec.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-eab170b8.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-044be391.svg"></head><body class="rustdoc trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><rustdoc-topbar><h2><a href="#">MacroResult</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../synstructure/index.html">synstructure</a><span class="version">0.13.2</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Macro<wbr>Result</a></h2><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.into_result" title="into_result">into_result</a></li></ul><h3><a href="#provided-methods">Provided Methods</a></h3><ul class="block"><li><a href="#method.into_stream" title="into_stream">into_stream</a></li></ul><h3><a href="#foreign-impls">Implementations on Foreign Types</a></h3><ul class="block"><li><a href="#impl-MacroResult-for-Result%3CT,+Error%3E" title="Result&#60;T&#62;">Result&#60;T&#62;</a></li><li><a href="#impl-MacroResult-for-TokenStream" title="TokenStream">TokenStream</a></li><li><a href="#impl-MacroResult-for-TokenStream" title="TokenStream">TokenStream</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><div id="rustdoc-modnav"><h2 class="in-crate"><a href="index.html">In crate synstructure</a></h2></div></div></nav><div class="sidebar-resizer" title="Drag to resize sidebar"></div><main><div class="width-limiter"><section id="main-content" class="content"><div class="main-heading"><div class="rustdoc-breadcrumbs"><a href="index.html">synstructure</a></div><h1>Trait <span class="trait">Macro<wbr>Result</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../src/synstructure/lib.rs.html#2466-2491">Source</a> </span></div><pre class="rust item-decl"><code>pub trait MacroResult {
// Required method
fn <a href="#tymethod.into_result" class="fn">into_result</a>(self) -&gt; <a class="type" href="../syn/error/type.Result.html" title="type syn::error::Result">Result</a>&lt;<a class="struct" href="../proc_macro2/struct.TokenStream.html" title="struct proc_macro2::TokenStream">TokenStream</a>&gt;;
// Provided method
fn <a href="#method.into_stream" class="fn">into_stream</a>(self) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.93.1/proc_macro/struct.TokenStream.html" title="struct proc_macro::TokenStream">TokenStream</a>
<span class="where">where Self: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a></span> { ... }
}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Helper trait describing values which may be returned by macro implementation
methods used by this crates macros.</p>
</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.into_result" class="method"><a class="src rightside" href="../src/synstructure/lib.rs.html#2468">Source</a><h4 class="code-header">fn <a href="#tymethod.into_result" class="fn">into_result</a>(self) -&gt; <a class="type" href="../syn/error/type.Result.html" title="type syn::error::Result">Result</a>&lt;<a class="struct" href="../proc_macro2/struct.TokenStream.html" title="struct proc_macro2::TokenStream">TokenStream</a>&gt;</h4></section></summary><div class="docblock"><p>Convert this result into a <code>Result</code> for further processing / validation.</p>
</div></details></div><h2 id="provided-methods" class="section-header">Provided Methods<a href="#provided-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="method.into_stream" class="method"><a class="src rightside" href="../src/synstructure/lib.rs.html#2482-2490">Source</a><h4 class="code-header">fn <a href="#method.into_stream" class="fn">into_stream</a>(self) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.93.1/proc_macro/struct.TokenStream.html" title="struct proc_macro::TokenStream">TokenStream</a><div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class="docblock"><p>Convert this result into a <code>proc_macro::TokenStream</code>, ready to return
from a native <code>proc_macro</code> implementation.</p>
<p>If <code>into_result()</code> would return an <code>Err</code>, this method should instead
generate a <code>compile_error!</code> invocation to nicely report the error.</p>
<p><em>This method is available if <code>synstructure</code> is built with the
<code>"proc-macro"</code> feature.</em></p>
</div></details></div><h2 id="foreign-impls" class="section-header">Implementations on Foreign Types<a href="#foreign-impls" class="anchor">§</a></h2><details class="toggle implementors-toggle"><summary><section id="impl-MacroResult-for-TokenStream" class="impl"><a class="src rightside" href="../src/synstructure/lib.rs.html#2507-2511">Source</a><a href="#impl-MacroResult-for-TokenStream" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.MacroResult.html" title="trait synstructure::MacroResult">MacroResult</a> for <a class="struct" href="../proc_macro2/struct.TokenStream.html" title="struct proc_macro2::TokenStream">TokenStream</a></h3></section></summary><div class="impl-items"><section id="method.into_result" class="method trait-impl"><a class="src rightside" href="../src/synstructure/lib.rs.html#2508-2510">Source</a><a href="#method.into_result" class="anchor">§</a><h4 class="code-header">fn <a href="#tymethod.into_result" class="fn">into_result</a>(self) -&gt; <a class="type" href="../syn/error/type.Result.html" title="type syn::error::Result">Result</a>&lt;<a class="struct" href="../proc_macro2/struct.TokenStream.html" title="struct proc_macro2::TokenStream">TokenStream</a>&gt;</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-MacroResult-for-TokenStream-1" class="impl"><a class="src rightside" href="../src/synstructure/lib.rs.html#2497-2505">Source</a><a href="#impl-MacroResult-for-TokenStream-1" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.MacroResult.html" title="trait synstructure::MacroResult">MacroResult</a> for <a class="struct" href="https://doc.rust-lang.org/1.93.1/proc_macro/struct.TokenStream.html" title="struct proc_macro::TokenStream">TokenStream</a></h3><span class="item-info"><div class="stab portability">Available on <strong>not (WebAssembly and (<code>target_os=unknown</code> or WASI)) and crate feature <code>proc-macro</code></strong> only.</div></span></section></summary><div class="impl-items"><section id="method.into_result-1" class="method trait-impl"><a class="src rightside" href="../src/synstructure/lib.rs.html#2498-2500">Source</a><a href="#method.into_result-1" class="anchor">§</a><h4 class="code-header">fn <a href="#tymethod.into_result" class="fn">into_result</a>(self) -&gt; <a class="type" href="../syn/error/type.Result.html" title="type syn::error::Result">Result</a>&lt;<a class="struct" href="../proc_macro2/struct.TokenStream.html" title="struct proc_macro2::TokenStream">TokenStream</a>&gt;</h4></section><section id="method.into_stream-1" class="method trait-impl"><a class="src rightside" href="../src/synstructure/lib.rs.html#2502-2504">Source</a><a href="#method.into_stream-1" class="anchor">§</a><h4 class="code-header">fn <a href="#method.into_stream" class="fn">into_stream</a>(self) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.93.1/proc_macro/struct.TokenStream.html" title="struct proc_macro::TokenStream">TokenStream</a></h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-MacroResult-for-Result%3CT,+Error%3E" class="impl"><a class="src rightside" href="../src/synstructure/lib.rs.html#2513-2520">Source</a><a href="#impl-MacroResult-for-Result%3CT,+Error%3E" class="anchor">§</a><h3 class="code-header">impl&lt;T: <a class="trait" href="trait.MacroResult.html" title="trait synstructure::MacroResult">MacroResult</a>&gt; <a class="trait" href="trait.MacroResult.html" title="trait synstructure::MacroResult">MacroResult</a> for <a class="type" href="../syn/error/type.Result.html" title="type syn::error::Result">Result</a>&lt;T&gt;</h3></section></summary><div class="impl-items"><section id="method.into_result-2" class="method trait-impl"><a class="src rightside" href="../src/synstructure/lib.rs.html#2514-2519">Source</a><a href="#method.into_result-2" class="anchor">§</a><h4 class="code-header">fn <a href="#tymethod.into_result" class="fn">into_result</a>(self) -&gt; <a class="type" href="../syn/error/type.Result.html" title="type syn::error::Result">Result</a>&lt;<a class="struct" href="../proc_macro2/struct.TokenStream.html" title="struct proc_macro2::TokenStream">TokenStream</a>&gt;</h4></section></div></details><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"></div><script src="../trait.impl/synstructure/trait.MacroResult.js" data-ignore-extern-crates="proc_macro,proc_macro2,syn" async></script></section></div></main></body></html>