mirror of
https://github.com/rust-lang/rust-analyzer.git
synced 2026-03-06 19:39:12 +00:00
85 lines
59 KiB
HTML
85 lines
59 KiB
HTML
<!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="Represents a process handling proc-macro communication."><title>ProcMacroServerProcess in proc_macro_api::process - 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="proc_macro_api" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.0 (254b59607 2026-01-19)" data-channel="1.93.0" 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 struct"><!--[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="#">ProcMacroServerProcess</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../proc_macro_api/index.html">proc_<wbr>macro_<wbr>api</a><span class="version">0.0.0</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Proc<wbr>Macro<wbr>Server<wbr>Process</a></h2><h3><a href="#fields">Fields</a></h3><ul class="block structfield"><li><a href="#structfield.active" title="active">active</a></li><li><a href="#structfield.exited" title="exited">exited</a></li><li><a href="#structfield.protocol" title="protocol">protocol</a></li><li><a href="#structfield.state" title="state">state</a></li><li><a href="#structfield.version" title="version">version</a></li></ul><h3><a href="#implementations">Methods</a></h3><ul class="block method"><li><a href="#method.enable_rust_analyzer_spans" title="enable_rust_analyzer_spans">enable_rust_analyzer_spans</a></li><li><a href="#method.exited" title="exited">exited</a></li><li><a href="#method.expand" title="expand">expand</a></li><li><a href="#method.find_proc_macros" title="find_proc_macros">find_proc_macros</a></li><li><a href="#method.number_of_active_req" title="number_of_active_req">number_of_active_req</a></li><li><a href="#method.run" title="run">run</a></li><li><a href="#method.run_bidirectional" title="run_bidirectional">run_bidirectional</a></li><li><a href="#method.rust_analyzer_spans" title="rust_analyzer_spans">rust_analyzer_spans</a></li><li><a href="#method.send_task_legacy" title="send_task_legacy">send_task_legacy</a></li><li><a href="#method.spawn" title="spawn">spawn</a></li><li><a href="#method.version" title="version">version</a></li><li><a href="#method.version_check" title="version_check">version_check</a></li><li><a href="#method.with_locked_io" title="with_locked_io">with_locked_io</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block trait-implementation"><li><a href="#impl-Debug-for-ProcMacroServerProcess" title="Debug">Debug</a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block synthetic-implementation"><li><a href="#impl-Freeze-for-ProcMacroServerProcess" title="!Freeze">!Freeze</a></li><li><a href="#impl-RefUnwindSafe-for-ProcMacroServerProcess" title="RefUnwindSafe">RefUnwindSafe</a></li><li><a href="#impl-Send-for-ProcMacroServerProcess" title="Send">Send</a></li><li><a href="#impl-Sync-for-ProcMacroServerProcess" title="Sync">Sync</a></li><li><a href="#impl-Unpin-for-ProcMacroServerProcess" title="Unpin">Unpin</a></li><li><a href="#impl-UnwindSafe-for-ProcMacroServerProcess" title="UnwindSafe">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" title="Any">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-T" title="Borrow<T>">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-T" title="BorrowMut<T>">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-T" title="From<T>">From<T></a></li><li><a href="#impl-Instrument-for-T" title="Instrument">Instrument</a></li><li><a href="#impl-Into%3CU%3E-for-T" title="Into<U>">Into<U></a></li><li><a href="#impl-IntoBox%3Cdyn+Any+%2B+Send+%2B+Sync%3E-for-T" title="IntoBox<dyn Any + Send + Sync>">IntoBox<dyn Any + Send + Sync></a></li><li><a href="#impl-IntoBox%3Cdyn+Any+%2B+Send%3E-for-T" title="IntoBox<dyn Any + Send>">IntoBox<dyn Any + Send></a></li><li><a href="#impl-IntoBox%3Cdyn+Any%3E-for-T" title="IntoBox<dyn Any>">IntoBox<dyn Any></a></li><li><a href="#impl-IntoEither-for-T" title="IntoEither">IntoEither</a></li><li><a href="#impl-Lookup%3CT%3E-for-T" title="Lookup<T>">Lookup<T></a></li><li><a href="#impl-Pointable-for-T" title="Pointable">Pointable</a></li><li><a href="#impl-TryFrom%3CU%3E-for-T" title="TryFrom<U>">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-T" title="TryInto<U>">TryInto<U></a></li><li><a href="#impl-WithSubscriber-for-T" title="WithSubscriber">WithSubscriber</a></li></ul></section><div id="rustdoc-modnav"><h2><a href="index.html">In proc_<wbr>macro_<wbr>api::<wbr>process</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">proc_macro_api</a>::<wbr><a href="index.html">process</a></div><h1>Struct <span class="struct">Proc<wbr>Macro<wbr>Server<wbr>Process</span> <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/proc_macro_api/process.rs.html#27-36">Source</a> </span></div><pre class="rust item-decl"><code>pub(crate) struct ProcMacroServerProcess {
|
|
state: <a class="struct" href="https://doc.rust-lang.org/1.93.0/std/sync/poison/mutex/struct.Mutex.html" title="struct std::sync::poison::mutex::Mutex">Mutex</a><<a class="struct" href="struct.ProcessSrvState.html" title="struct proc_macro_api::process::ProcessSrvState">ProcessSrvState</a>>,
|
|
version: <a class="primitive" href="https://doc.rust-lang.org/1.93.0/std/primitive.u32.html">u32</a>,
|
|
protocol: <a class="enum" href="enum.Protocol.html" title="enum proc_macro_api::process::Protocol">Protocol</a>,
|
|
exited: <a class="struct" href="https://doc.rust-lang.org/1.93.0/std/sync/once_lock/struct.OnceLock.html" title="struct std::sync::once_lock::OnceLock">OnceLock</a><<a class="struct" href="https://doc.rust-lang.org/1.93.0/core/panic/unwind_safe/struct.AssertUnwindSafe.html" title="struct core::panic::unwind_safe::AssertUnwindSafe">AssertUnwindSafe</a><<a class="struct" href="../struct.ServerError.html" title="struct proc_macro_api::ServerError">ServerError</a>>>,
|
|
active: <a class="struct" href="https://doc.rust-lang.org/1.93.0/core/sync/atomic/struct.AtomicU32.html" title="struct core::sync::atomic::AtomicU32">AtomicU32</a>,
|
|
}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Represents a process handling proc-macro communication.</p>
|
|
</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.state" class="structfield section-header"><a href="#structfield.state" class="anchor field">§</a><code>state: <a class="struct" href="https://doc.rust-lang.org/1.93.0/std/sync/poison/mutex/struct.Mutex.html" title="struct std::sync::poison::mutex::Mutex">Mutex</a><<a class="struct" href="struct.ProcessSrvState.html" title="struct proc_macro_api::process::ProcessSrvState">ProcessSrvState</a>></code></span><div class="docblock"><p>The state of the proc-macro server process, the protocol is currently strictly sequential
|
|
hence the lock on the state.</p>
|
|
</div><span id="structfield.version" class="structfield section-header"><a href="#structfield.version" class="anchor field">§</a><code>version: <a class="primitive" href="https://doc.rust-lang.org/1.93.0/std/primitive.u32.html">u32</a></code></span><span id="structfield.protocol" class="structfield section-header"><a href="#structfield.protocol" class="anchor field">§</a><code>protocol: <a class="enum" href="enum.Protocol.html" title="enum proc_macro_api::process::Protocol">Protocol</a></code></span><span id="structfield.exited" class="structfield section-header"><a href="#structfield.exited" class="anchor field">§</a><code>exited: <a class="struct" href="https://doc.rust-lang.org/1.93.0/std/sync/once_lock/struct.OnceLock.html" title="struct std::sync::once_lock::OnceLock">OnceLock</a><<a class="struct" href="https://doc.rust-lang.org/1.93.0/core/panic/unwind_safe/struct.AssertUnwindSafe.html" title="struct core::panic::unwind_safe::AssertUnwindSafe">AssertUnwindSafe</a><<a class="struct" href="../struct.ServerError.html" title="struct proc_macro_api::ServerError">ServerError</a>>></code></span><div class="docblock"><p>Populated when the server exits.</p>
|
|
</div><span id="structfield.active" class="structfield section-header"><a href="#structfield.active" class="anchor field">§</a><code>active: <a class="struct" href="https://doc.rust-lang.org/1.93.0/core/sync/atomic/struct.AtomicU32.html" title="struct core::sync::atomic::AtomicU32">AtomicU32</a></code></span><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-ProcMacroServerProcess" class="impl"><a class="src rightside" href="../../src/proc_macro_api/process.rs.html#88-367">Source</a><a href="#impl-ProcMacroServerProcess" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.ProcMacroServerProcess.html" title="struct proc_macro_api::process::ProcMacroServerProcess">ProcMacroServerProcess</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.spawn" class="method"><a class="src rightside" href="../../src/proc_macro_api/process.rs.html#90-118">Source</a><h4 class="code-header">pub(crate) fn <a href="#method.spawn" class="fn">spawn</a><'a>(
|
|
process_path: &AbsPath,
|
|
env: impl <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a><Item = (impl <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a><<a class="struct" href="https://doc.rust-lang.org/1.93.0/std/ffi/os_str/struct.OsStr.html" title="struct std::ffi::os_str::OsStr">OsStr</a>>, &'a <a class="enum" href="https://doc.rust-lang.org/1.93.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><impl 'a + <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a><<a class="struct" href="https://doc.rust-lang.org/1.93.0/std/ffi/os_str/struct.OsStr.html" title="struct std::ffi::os_str::OsStr">OsStr</a>>>)> + <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
|
version: <a class="enum" href="https://doc.rust-lang.org/1.93.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><&<a class="struct" href="https://docs.rs/semver/1.0.27/semver/struct.Version.html" title="struct semver::Version">Version</a>>,
|
|
) -> <a class="type" href="https://doc.rust-lang.org/1.93.0/std/io/error/type.Result.html" title="type std::io::error::Result">Result</a><<a class="struct" href="struct.ProcMacroServerProcess.html" title="struct proc_macro_api::process::ProcMacroServerProcess">ProcMacroServerProcess</a>></h4></section></summary><div class="docblock"><p>Starts the proc-macro server and performs a version check</p>
|
|
</div></details><details class="toggle method-toggle" open><summary><section id="method.run" class="method"><a class="src rightside" href="../../src/proc_macro_api/process.rs.html#121-204">Source</a><h4 class="code-header">pub(crate) fn <a href="#method.run" class="fn">run</a>(
|
|
spawn: impl <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="enum" href="https://doc.rust-lang.org/1.93.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="enum" href="../enum.ProtocolFormat.html" title="enum proc_macro_api::ProtocolFormat">ProtocolFormat</a>>) -> <a class="type" href="https://doc.rust-lang.org/1.93.0/std/io/error/type.Result.html" title="type std::io::error::Result">Result</a><(<a class="struct" href="https://doc.rust-lang.org/1.93.0/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><dyn <a class="trait" href="trait.ProcessExit.html" title="trait proc_macro_api::process::ProcessExit">ProcessExit</a>>, <a class="struct" href="https://doc.rust-lang.org/1.93.0/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><dyn <a class="trait" href="https://doc.rust-lang.org/1.93.0/std/io/trait.Write.html" title="trait std::io::Write">Write</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>>, <a class="struct" href="https://doc.rust-lang.org/1.93.0/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><dyn <a class="trait" href="https://doc.rust-lang.org/1.93.0/std/io/trait.BufRead.html" title="trait std::io::BufRead">BufRead</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>>)>,
|
|
version: <a class="enum" href="https://doc.rust-lang.org/1.93.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><&<a class="struct" href="https://docs.rs/semver/1.0.27/semver/struct.Version.html" title="struct semver::Version">Version</a>>,
|
|
binary_server_version: impl <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> <a class="struct" href="https://doc.rust-lang.org/1.93.0/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>,
|
|
) -> <a class="type" href="https://doc.rust-lang.org/1.93.0/std/io/error/type.Result.html" title="type std::io::error::Result">Result</a><<a class="struct" href="struct.ProcMacroServerProcess.html" title="struct proc_macro_api::process::ProcMacroServerProcess">ProcMacroServerProcess</a>></h4></section></summary><div class="docblock"><p>Invokes <code>spawn</code> and performs a version check.</p>
|
|
</div></details><details class="toggle method-toggle" open><summary><section id="method.find_proc_macros" class="method"><a class="src rightside" href="../../src/proc_macro_api/process.rs.html#207-220">Source</a><h4 class="code-header">pub(crate) fn <a href="#method.find_proc_macros" class="fn">find_proc_macros</a>(
|
|
&self,
|
|
dylib_path: &AbsPath,
|
|
callback: <a class="enum" href="https://doc.rust-lang.org/1.93.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="type" href="../bidirectional_protocol/type.SubCallback.html" title="type proc_macro_api::bidirectional_protocol::SubCallback">SubCallback</a><'_>>,
|
|
) -> <a class="enum" href="https://doc.rust-lang.org/1.93.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/1.93.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="struct" href="https://doc.rust-lang.org/1.93.0/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><(<a class="struct" href="https://doc.rust-lang.org/1.93.0/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>, <a class="enum" href="../enum.ProcMacroKind.html" title="enum proc_macro_api::ProcMacroKind">ProcMacroKind</a>)>, <a class="struct" href="https://doc.rust-lang.org/1.93.0/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>>, <a class="struct" href="../struct.ServerError.html" title="struct proc_macro_api::ServerError">ServerError</a>></h4></section></summary><div class="docblock"><p>Finds proc-macros in a given dynamic library.</p>
|
|
</div></details><details class="toggle method-toggle" open><summary><section id="method.exited" class="method"><a class="src rightside" href="../../src/proc_macro_api/process.rs.html#223-225">Source</a><h4 class="code-header">pub(crate) fn <a href="#method.exited" class="fn">exited</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><&<a class="struct" href="../struct.ServerError.html" title="struct proc_macro_api::ServerError">ServerError</a>></h4></section></summary><div class="docblock"><p>Returns the server error if the process has exited.</p>
|
|
</div></details><details class="toggle method-toggle" open><summary><section id="method.version" class="method"><a class="src rightside" href="../../src/proc_macro_api/process.rs.html#228-230">Source</a><h4 class="code-header">pub(crate) fn <a href="#method.version" class="fn">version</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.0/std/primitive.u32.html">u32</a></h4></section></summary><div class="docblock"><p>Retrieves the API version of the proc-macro server.</p>
|
|
</div></details><details class="toggle method-toggle" open><summary><section id="method.rust_analyzer_spans" class="method"><a class="src rightside" href="../../src/proc_macro_api/process.rs.html#233-238">Source</a><h4 class="code-header">pub(crate) fn <a href="#method.rust_analyzer_spans" class="fn">rust_analyzer_spans</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.0/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Enable support for rust-analyzer span mode if the server supports it.</p>
|
|
</div></details><details class="toggle method-toggle" open><summary><section id="method.version_check" class="method"><a class="src rightside" href="../../src/proc_macro_api/process.rs.html#241-249">Source</a><h4 class="code-header">fn <a href="#method.version_check" class="fn">version_check</a>(
|
|
&self,
|
|
callback: <a class="enum" href="https://doc.rust-lang.org/1.93.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="type" href="../bidirectional_protocol/type.SubCallback.html" title="type proc_macro_api::bidirectional_protocol::SubCallback">SubCallback</a><'_>>,
|
|
) -> <a class="enum" href="https://doc.rust-lang.org/1.93.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.0/std/primitive.u32.html">u32</a>, <a class="struct" href="../struct.ServerError.html" title="struct proc_macro_api::ServerError">ServerError</a>></h4></section></summary><div class="docblock"><p>Checks the API version of the running proc-macro server.</p>
|
|
</div></details><details class="toggle method-toggle" open><summary><section id="method.enable_rust_analyzer_spans" class="method"><a class="src rightside" href="../../src/proc_macro_api/process.rs.html#252-263">Source</a><h4 class="code-header">fn <a href="#method.enable_rust_analyzer_spans" class="fn">enable_rust_analyzer_spans</a>(
|
|
&self,
|
|
callback: <a class="enum" href="https://doc.rust-lang.org/1.93.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="type" href="../bidirectional_protocol/type.SubCallback.html" title="type proc_macro_api::bidirectional_protocol::SubCallback">SubCallback</a><'_>>,
|
|
) -> <a class="enum" href="https://doc.rust-lang.org/1.93.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="../legacy_protocol/msg/enum.SpanMode.html" title="enum proc_macro_api::legacy_protocol::msg::SpanMode">SpanMode</a>, <a class="struct" href="../struct.ServerError.html" title="struct proc_macro_api::ServerError">ServerError</a>></h4></section></summary><div class="docblock"><p>Enable support for rust-analyzer span mode if the server supports it.</p>
|
|
</div></details><section id="method.expand" class="method"><a class="src rightside" href="../../src/proc_macro_api/process.rs.html#265-306">Source</a><h4 class="code-header">pub(crate) fn <a href="#method.expand" class="fn">expand</a>(
|
|
&self,
|
|
proc_macro: &<a class="struct" href="../struct.ProcMacro.html" title="struct proc_macro_api::ProcMacro">ProcMacro</a>,
|
|
subtree: SubtreeView<'_>,
|
|
attr: <a class="enum" href="https://doc.rust-lang.org/1.93.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><SubtreeView<'_>>,
|
|
env: <a class="struct" href="https://doc.rust-lang.org/1.93.0/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><(<a class="struct" href="https://doc.rust-lang.org/1.93.0/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>, <a class="struct" href="https://doc.rust-lang.org/1.93.0/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>)>,
|
|
def_site: Span,
|
|
call_site: Span,
|
|
mixed_site: Span,
|
|
current_dir: <a class="struct" href="https://doc.rust-lang.org/1.93.0/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>,
|
|
callback: <a class="enum" href="https://doc.rust-lang.org/1.93.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="type" href="../bidirectional_protocol/type.SubCallback.html" title="type proc_macro_api::bidirectional_protocol::SubCallback">SubCallback</a><'_>>,
|
|
) -> <a class="enum" href="https://doc.rust-lang.org/1.93.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/1.93.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><TopSubtree, <a class="struct" href="https://doc.rust-lang.org/1.93.0/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>>, <a class="struct" href="../struct.ServerError.html" title="struct proc_macro_api::ServerError">ServerError</a>></h4></section><section id="method.send_task_legacy" class="method"><a class="src rightside" href="../../src/proc_macro_api/process.rs.html#308-332">Source</a><h4 class="code-header">pub(crate) fn <a href="#method.send_task_legacy" class="fn">send_task_legacy</a><Request, Response>(
|
|
&self,
|
|
send: impl <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(&mut dyn <a class="trait" href="https://doc.rust-lang.org/1.93.0/std/io/trait.Write.html" title="trait std::io::Write">Write</a>, &mut dyn <a class="trait" href="https://doc.rust-lang.org/1.93.0/std/io/trait.BufRead.html" title="trait std::io::BufRead">BufRead</a>, Request, &mut <a class="struct" href="https://doc.rust-lang.org/1.93.0/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/1.93.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Response>, <a class="struct" href="../struct.ServerError.html" title="struct proc_macro_api::ServerError">ServerError</a>>,
|
|
req: Request,
|
|
) -> <a class="enum" href="https://doc.rust-lang.org/1.93.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Response, <a class="struct" href="../struct.ServerError.html" title="struct proc_macro_api::ServerError">ServerError</a>></h4></section><section id="method.with_locked_io" class="method"><a class="src rightside" href="../../src/proc_macro_api/process.rs.html#334-352">Source</a><h4 class="code-header">fn <a href="#method.with_locked_io" class="fn">with_locked_io</a><R, B>(
|
|
&self,
|
|
buf: B,
|
|
f: impl <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(&mut dyn <a class="trait" href="https://doc.rust-lang.org/1.93.0/std/io/trait.Write.html" title="trait std::io::Write">Write</a>, &mut dyn <a class="trait" href="https://doc.rust-lang.org/1.93.0/std/io/trait.BufRead.html" title="trait std::io::BufRead">BufRead</a>, <a class="primitive" href="https://doc.rust-lang.org/1.93.0/std/primitive.reference.html">&mut B</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><R, <a class="struct" href="../struct.ServerError.html" title="struct proc_macro_api::ServerError">ServerError</a>>,
|
|
) -> <a class="enum" href="https://doc.rust-lang.org/1.93.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><R, <a class="struct" href="../struct.ServerError.html" title="struct proc_macro_api::ServerError">ServerError</a>></h4></section><section id="method.run_bidirectional" class="method"><a class="src rightside" href="../../src/proc_macro_api/process.rs.html#354-362">Source</a><h4 class="code-header">pub(crate) fn <a href="#method.run_bidirectional" class="fn">run_bidirectional</a>(
|
|
&self,
|
|
initial: <a class="enum" href="../bidirectional_protocol/msg/enum.BidirectionalMessage.html" title="enum proc_macro_api::bidirectional_protocol::msg::BidirectionalMessage">BidirectionalMessage</a>,
|
|
callback: <a class="type" href="../bidirectional_protocol/type.SubCallback.html" title="type proc_macro_api::bidirectional_protocol::SubCallback">SubCallback</a><'_>,
|
|
) -> <a class="enum" href="https://doc.rust-lang.org/1.93.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="../bidirectional_protocol/msg/enum.BidirectionalMessage.html" title="enum proc_macro_api::bidirectional_protocol::msg::BidirectionalMessage">BidirectionalMessage</a>, <a class="struct" href="../struct.ServerError.html" title="struct proc_macro_api::ServerError">ServerError</a>></h4></section><section id="method.number_of_active_req" class="method"><a class="src rightside" href="../../src/proc_macro_api/process.rs.html#364-366">Source</a><h4 class="code-header">pub(crate) fn <a href="#method.number_of_active_req" class="fn">number_of_active_req</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.0/std/primitive.u32.html">u32</a></h4></section></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-Debug-for-ProcMacroServerProcess" class="impl"><a class="src rightside" href="../../src/proc_macro_api/process.rs.html#38-46">Source</a><a href="#impl-Debug-for-ProcMacroServerProcess" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="struct" href="struct.ProcMacroServerProcess.html" title="struct proc_macro_api::process::ProcMacroServerProcess">ProcMacroServerProcess</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt" class="method trait-impl"><a class="src rightside" href="../../src/proc_macro_api/process.rs.html#39-45">Source</a><a href="#method.fmt" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.93.0/core/fmt/trait.Debug.html#tymethod.fmt" class="fn">fmt</a>(&self, f: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.0/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a><'_>) -> <a class="type" href="https://doc.rust-lang.org/1.93.0/core/fmt/type.Result.html" title="type core::fmt::Result">Result</a></h4></section></summary><div class='docblock'>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/1.93.0/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></div></details></div></details></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-Freeze-for-ProcMacroServerProcess" class="impl"><a href="#impl-Freeze-for-ProcMacroServerProcess" class="anchor">§</a><h3 class="code-header">impl !<a class="trait" href="https://doc.rust-lang.org/1.93.0/core/marker/trait.Freeze.html" title="trait core::marker::Freeze">Freeze</a> for <a class="struct" href="struct.ProcMacroServerProcess.html" title="struct proc_macro_api::process::ProcMacroServerProcess">ProcMacroServerProcess</a></h3></section><section id="impl-RefUnwindSafe-for-ProcMacroServerProcess" class="impl"><a href="#impl-RefUnwindSafe-for-ProcMacroServerProcess" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.ProcMacroServerProcess.html" title="struct proc_macro_api::process::ProcMacroServerProcess">ProcMacroServerProcess</a></h3></section><section id="impl-Send-for-ProcMacroServerProcess" class="impl"><a href="#impl-Send-for-ProcMacroServerProcess" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.ProcMacroServerProcess.html" title="struct proc_macro_api::process::ProcMacroServerProcess">ProcMacroServerProcess</a></h3></section><section id="impl-Sync-for-ProcMacroServerProcess" class="impl"><a href="#impl-Sync-for-ProcMacroServerProcess" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.ProcMacroServerProcess.html" title="struct proc_macro_api::process::ProcMacroServerProcess">ProcMacroServerProcess</a></h3></section><section id="impl-Unpin-for-ProcMacroServerProcess" class="impl"><a href="#impl-Unpin-for-ProcMacroServerProcess" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.ProcMacroServerProcess.html" title="struct proc_macro_api::process::ProcMacroServerProcess">ProcMacroServerProcess</a></h3></section><section id="impl-UnwindSafe-for-ProcMacroServerProcess" class="impl"><a href="#impl-UnwindSafe-for-ProcMacroServerProcess" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.ProcMacroServerProcess.html" title="struct proc_macro_api::process::ProcMacroServerProcess">ProcMacroServerProcess</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.93.0/src/core/any.rs.html#138">Source</a><a href="#impl-Any-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.93.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.93.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.93.0/src/core/any.rs.html#139">Source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.93.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/1.93.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.93.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.93.0/src/core/borrow.rs.html#212">Source</a><a href="#impl-Borrow%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T<div class="where">where
|
|
T: ?<a class="trait" href="https://doc.rust-lang.org/1.93.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.93.0/src/core/borrow.rs.html#214">Source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.93.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.0/std/primitive.reference.html">&T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.93.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.93.0/src/core/borrow.rs.html#221">Source</a><a href="#impl-BorrowMut%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T<div class="where">where
|
|
T: ?<a class="trait" href="https://doc.rust-lang.org/1.93.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.93.0/src/core/borrow.rs.html#222">Source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.93.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.0/std/primitive.reference.html">&mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.93.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.93.0/src/core/convert/mod.rs.html#785">Source</a><a href="#impl-From%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> 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.93.0/src/core/convert/mod.rs.html#788">Source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.93.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -> 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-Instrument-for-T" class="impl"><a href="#impl-Instrument-for-T" class="anchor">§</a><h3 class="code-header">impl<T> Instrument for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.instrument" class="method trait-impl"><a href="#method.instrument" class="anchor">§</a><h4 class="code-header">fn <a class="fn">instrument</a>(self, span: Span) -> Instrumented<Self></h4></section></summary><div class='docblock'>Instruments this type with the provided [<code>Span</code>], returning an
|
|
<code>Instrumented</code> wrapper. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.in_current_span" class="method trait-impl"><a href="#method.in_current_span" class="anchor">§</a><h4 class="code-header">fn <a class="fn">in_current_span</a>(self) -> Instrumented<Self></h4></section></summary><div class='docblock'>Instruments this type with the <a href="super::Span::current()">current</a> <a href="crate::Span"><code>Span</code></a>, returning an
|
|
<code>Instrumented</code> wrapper. <a>Read more</a></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.93.0/src/core/convert/mod.rs.html#767-769">Source</a><a href="#impl-Into%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><U> for T<div class="where">where
|
|
U: <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T>,</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.93.0/src/core/convert/mod.rs.html#777">Source</a><a href="#method.into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.93.0/core/convert/trait.Into.html#tymethod.into" class="fn">into</a>(self) -> 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.93.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for U</code> chooses to do.</p>
|
|
</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-IntoBox%3Cdyn+Any%3E-for-T" class="impl"><a href="#impl-IntoBox%3Cdyn+Any%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T> IntoBox<dyn <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a>> for T<div class="where">where
|
|
T: <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into_box" class="method trait-impl"><a href="#method.into_box" class="anchor">§</a><h4 class="code-header">fn <a class="fn">into_box</a>(self) -> <a class="struct" href="https://doc.rust-lang.org/1.93.0/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><dyn <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a>></h4></section></summary><div class='docblock'>Convert self into the appropriate boxed form.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-IntoBox%3Cdyn+Any+%2B+Send%3E-for-T" class="impl"><a href="#impl-IntoBox%3Cdyn+Any+%2B+Send%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T> IntoBox<dyn <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>> for T<div class="where">where
|
|
T: <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into_box-1" class="method trait-impl"><a href="#method.into_box-1" class="anchor">§</a><h4 class="code-header">fn <a class="fn">into_box</a>(self) -> <a class="struct" href="https://doc.rust-lang.org/1.93.0/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><dyn <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>></h4></section></summary><div class='docblock'>Convert self into the appropriate boxed form.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-IntoBox%3Cdyn+Any+%2B+Send+%2B+Sync%3E-for-T" class="impl"><a href="#impl-IntoBox%3Cdyn+Any+%2B+Send+%2B+Sync%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T> IntoBox<dyn <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>> for T<div class="where">where
|
|
T: <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into_box-2" class="method trait-impl"><a href="#method.into_box-2" class="anchor">§</a><h4 class="code-header">fn <a class="fn">into_box</a>(self) -> <a class="struct" href="https://doc.rust-lang.org/1.93.0/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><dyn <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>></h4></section></summary><div class='docblock'>Convert self into the appropriate boxed form.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-IntoEither-for-T" class="impl"><a class="src rightside" href="https://docs.rs/either/1/src/either/into_either.rs.html#64">Source</a><a href="#impl-IntoEither-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://docs.rs/either/1/either/into_either/trait.IntoEither.html" title="trait either::into_either::IntoEither">IntoEither</a> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into_either" class="method trait-impl"><a class="src rightside" href="https://docs.rs/either/1/src/either/into_either.rs.html#29">Source</a><a href="#method.into_either" class="anchor">§</a><h4 class="code-header">fn <a href="https://docs.rs/either/1/either/into_either/trait.IntoEither.html#method.into_either" class="fn">into_either</a>(self, into_left: <a class="primitive" href="https://doc.rust-lang.org/1.93.0/std/primitive.bool.html">bool</a>) -> <a class="enum" href="https://docs.rs/either/1/either/enum.Either.html" title="enum either::Either">Either</a><Self, Self></h4></section></summary><div class='docblock'>Converts <code>self</code> into a <a href="https://docs.rs/either/1/either/enum.Either.html#variant.Left" title="variant either::Either::Left"><code>Left</code></a> variant of <a href="https://docs.rs/either/1/either/enum.Either.html" title="enum either::Either"><code>Either<Self, Self></code></a>
|
|
if <code>into_left</code> is <code>true</code>.
|
|
Converts <code>self</code> into a <a href="https://docs.rs/either/1/either/enum.Either.html#variant.Right" title="variant either::Either::Right"><code>Right</code></a> variant of <a href="https://docs.rs/either/1/either/enum.Either.html" title="enum either::Either"><code>Either<Self, Self></code></a>
|
|
otherwise. <a href="https://docs.rs/either/1/either/into_either/trait.IntoEither.html#method.into_either">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.into_either_with" class="method trait-impl"><a class="src rightside" href="https://docs.rs/either/1/src/either/into_either.rs.html#55-57">Source</a><a href="#method.into_either_with" class="anchor">§</a><h4 class="code-header">fn <a href="https://docs.rs/either/1/either/into_either/trait.IntoEither.html#method.into_either_with" class="fn">into_either_with</a><F>(self, into_left: F) -> <a class="enum" href="https://docs.rs/either/1/either/enum.Either.html" title="enum either::Either">Either</a><Self, Self><div class="where">where
|
|
F: <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(&Self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.0/std/primitive.bool.html">bool</a>,</div></h4></section></summary><div class='docblock'>Converts <code>self</code> into a <a href="https://docs.rs/either/1/either/enum.Either.html#variant.Left" title="variant either::Either::Left"><code>Left</code></a> variant of <a href="https://docs.rs/either/1/either/enum.Either.html" title="enum either::Either"><code>Either<Self, Self></code></a>
|
|
if <code>into_left(&self)</code> returns <code>true</code>.
|
|
Converts <code>self</code> into a <a href="https://docs.rs/either/1/either/enum.Either.html#variant.Right" title="variant either::Either::Right"><code>Right</code></a> variant of <a href="https://docs.rs/either/1/either/enum.Either.html" title="enum either::Either"><code>Either<Self, Self></code></a>
|
|
otherwise. <a href="https://docs.rs/either/1/either/into_either/trait.IntoEither.html#method.into_either_with">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Lookup%3CT%3E-for-T" class="impl"><a href="#impl-Lookup%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T> Lookup<T> for T</h3></section></summary><div class="impl-items"><section id="method.into_owned" class="method trait-impl"><a href="#method.into_owned" class="anchor">§</a><h4 class="code-header">fn <a class="fn">into_owned</a>(self) -> T</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Pointable-for-T" class="impl"><a href="#impl-Pointable-for-T" class="anchor">§</a><h3 class="code-header">impl<T> Pointable for T</h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedconstant.ALIGN" class="associatedconstant trait-impl"><a href="#associatedconstant.ALIGN" class="anchor">§</a><h4 class="code-header">const <a class="constant">ALIGN</a>: <a class="primitive" href="https://doc.rust-lang.org/1.93.0/std/primitive.usize.html">usize</a></h4></section></summary><div class='docblock'>The alignment of pointer.</div></details><details class="toggle" open><summary><section id="associatedtype.Init" class="associatedtype trait-impl"><a href="#associatedtype.Init" class="anchor">§</a><h4 class="code-header">type <a class="associatedtype">Init</a> = T</h4></section></summary><div class='docblock'>The type for initializers.</div></details><details class="toggle method-toggle" open><summary><section id="method.init" class="method trait-impl"><a href="#method.init" class="anchor">§</a><h4 class="code-header">unsafe fn <a class="fn">init</a>(init: <T as Pointable>::Init) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.0/std/primitive.usize.html">usize</a></h4></section></summary><div class='docblock'>Initializes a with the given initializer. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.deref" class="method trait-impl"><a href="#method.deref" class="anchor">§</a><h4 class="code-header">unsafe fn <a class="fn">deref</a><'a>(ptr: <a class="primitive" href="https://doc.rust-lang.org/1.93.0/std/primitive.usize.html">usize</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.0/std/primitive.reference.html">&'a T</a></h4></section></summary><div class='docblock'>Dereferences the given pointer. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.deref_mut" class="method trait-impl"><a href="#method.deref_mut" class="anchor">§</a><h4 class="code-header">unsafe fn <a class="fn">deref_mut</a><'a>(ptr: <a class="primitive" href="https://doc.rust-lang.org/1.93.0/std/primitive.usize.html">usize</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.0/std/primitive.reference.html">&'a mut T</a></h4></section></summary><div class='docblock'>Mutably dereferences the given pointer. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.drop" class="method trait-impl"><a href="#method.drop" class="anchor">§</a><h4 class="code-header">unsafe fn <a class="fn">drop</a>(ptr: <a class="primitive" href="https://doc.rust-lang.org/1.93.0/std/primitive.usize.html">usize</a>)</h4></section></summary><div class='docblock'>Drops the object pointed to by the given pointer. <a>Read more</a></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.93.0/src/core/convert/mod.rs.html#827-829">Source</a><a href="#impl-TryFrom%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U> for T<div class="where">where
|
|
U: <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><T>,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error-1" class="associatedtype trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.93.0/src/core/convert/mod.rs.html#831">Source</a><a href="#associatedtype.Error-1" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.93.0/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = <a class="enum" href="https://doc.rust-lang.org/1.93.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.93.0/src/core/convert/mod.rs.html#834">Source</a><a href="#method.try_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.93.0/core/convert/trait.TryFrom.html#tymethod.try_from" class="fn">try_from</a>(value: U) -> <a class="enum" href="https://doc.rust-lang.org/1.93.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><T, <T as <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.93.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></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.93.0/src/core/convert/mod.rs.html#811-813">Source</a><a href="#impl-TryInto%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a><U> for T<div class="where">where
|
|
U: <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.93.0/src/core/convert/mod.rs.html#815">Source</a><a href="#associatedtype.Error" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.93.0/core/convert/trait.TryInto.html#associatedtype.Error" class="associatedtype">Error</a> = <U as <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.93.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.93.0/src/core/convert/mod.rs.html#818">Source</a><a href="#method.try_into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.93.0/core/convert/trait.TryInto.html#tymethod.try_into" class="fn">try_into</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><U, <U as <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.93.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-WithSubscriber-for-T" class="impl"><a href="#impl-WithSubscriber-for-T" class="anchor">§</a><h3 class="code-header">impl<T> WithSubscriber for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.with_subscriber" class="method trait-impl"><a href="#method.with_subscriber" class="anchor">§</a><h4 class="code-header">fn <a class="fn">with_subscriber</a><S>(self, subscriber: S) -> WithDispatch<Self><div class="where">where
|
|
S: <a class="trait" href="https://doc.rust-lang.org/1.93.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><Dispatch>,</div></h4></section></summary><div class='docblock'>Attaches the provided <a href="super::Subscriber"><code>Subscriber</code></a> to this type, returning a
|
|
[<code>WithDispatch</code>] wrapper. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_current_subscriber" class="method trait-impl"><a href="#method.with_current_subscriber" class="anchor">§</a><h4 class="code-header">fn <a class="fn">with_current_subscriber</a>(self) -> WithDispatch<Self></h4></section></summary><div class='docblock'>Attaches the current <a href="crate::dispatcher#setting-the-default-subscriber">default</a> <a href="super::Subscriber"><code>Subscriber</code></a> to this type, returning a
|
|
[<code>WithDispatch</code>] wrapper. <a>Read more</a></div></details></div></details></div></section></div></main></body></html> |