Files
greptimedb/flow/struct.StreamingEngine.html
2025-12-22 06:16:12 +00:00

326 lines
150 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!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="FlowNodeManager manages the state of all tasks in the flow node, which should be run on the same thread"><title>StreamingEngine in flow - 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-e56847b5.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="flow" data-themes="" data-resource-suffix="" data-rustdoc-version="1.92.0-nightly (fa3155a64 2025-09-30)" data-channel="nightly" data-search-js="search-e256b49e.js" data-stringdex-js="stringdex-828709d0.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-ce535bd0.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="#">StreamingEngine</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../flow/index.html">flow</a><span class="version">1.0.0-beta.3</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Streaming<wbr>Engine</a></h2><h3><a href="#fields">Fields</a></h3><ul class="block structfield"><li><a href="#structfield.flow_err_collectors" title="flow_err_collectors">flow_err_collectors</a></li><li><a href="#structfield.flush_lock" title="flush_lock">flush_lock</a></li><li><a href="#structfield.frontend_invoker" title="frontend_invoker">frontend_invoker</a></li><li><a href="#structfield.node_context" title="node_context">node_context</a></li><li><a href="#structfield.node_id" title="node_id">node_id</a></li><li><a href="#structfield.query_engine" title="query_engine">query_engine</a></li><li><a href="#structfield.refill_tasks" title="refill_tasks">refill_tasks</a></li><li><a href="#structfield.src_send_buf_lens" title="src_send_buf_lens">src_send_buf_lens</a></li><li><a href="#structfield.state_report_handler" title="state_report_handler">state_report_handler</a></li><li><a href="#structfield.table_info_source" title="table_info_source">table_info_source</a></li><li><a href="#structfield.tick_manager" title="tick_manager">tick_manager</a></li><li><a href="#structfield.worker_handles" title="worker_handles">worker_handles</a></li><li><a href="#structfield.worker_selector" title="worker_selector">worker_selector</a></li></ul><h3><a href="#implementations">Methods</a></h3><ul class="block method"><li><a href="#method.add_worker_handle" title="add_worker_handle">add_worker_handle</a></li><li><a href="#method.adjust_auto_created_table_schema" title="adjust_auto_created_table_schema">adjust_auto_created_table_schema</a></li><li><a href="#method.create_and_start_refill_flow_tasks" title="create_and_start_refill_flow_tasks">create_and_start_refill_flow_tasks</a></li><li><a href="#method.create_flow_inner" title="create_flow_inner">create_flow_inner</a></li><li><a href="#method.create_refill_flow_tasks" title="create_refill_flow_tasks">create_refill_flow_tasks</a></li><li><a href="#method.create_table_from_relation" title="create_table_from_relation">create_table_from_relation</a></li><li><a href="#method.fetch_table_pk_schema" title="fetch_table_pk_schema">fetch_table_pk_schema</a></li><li><a href="#method.flow_exist_inner" title="flow_exist_inner">flow_exist_inner</a></li><li><a href="#method.flush_flow_inner" title="flush_flow_inner">flush_flow_inner</a></li><li><a href="#method.gen_state_report" title="gen_state_report">gen_state_report</a></li><li><a href="#method.generate_writeback_request" title="generate_writeback_request">generate_writeback_request</a></li><li><a href="#method.get_worker_handle_for_create_flow" title="get_worker_handle_for_create_flow">get_worker_handle_for_create_flow</a></li><li><a href="#method.handle_inserts_inner" title="handle_inserts_inner">handle_inserts_inner</a></li><li><a href="#method.handle_write_request" title="handle_write_request">handle_write_request</a></li><li><a href="#method.log_all_errors" title="log_all_errors">log_all_errors</a></li><li><a href="#method.new" title="new">new</a></li><li><a href="#method.new_with_workers" title="new_with_workers">new_with_workers</a></li><li><a href="#method.remove_flow_inner" title="remove_flow_inner">remove_flow_inner</a></li><li><a href="#method.run" title="run">run</a></li><li><a href="#method.run_available" title="run_available">run_available</a></li><li><a href="#method.run_background" title="run_background">run_background</a></li><li><a href="#method.send_writeback_requests" title="send_writeback_requests">send_writeback_requests</a></li><li><a href="#method.set_frontend_invoker" title="set_frontend_invoker">set_frontend_invoker</a></li><li><a href="#method.start_state_report_handler" title="start_state_report_handler">start_state_report_handler</a></li><li><a href="#method.starting_refill_flows" title="starting_refill_flows">starting_refill_flows</a></li><li><a href="#method.submit_create_sink_table_ddl" title="submit_create_sink_table_ddl">submit_create_sink_table_ddl</a></li><li><a href="#method.try_fetch_existing_table" title="try_fetch_existing_table">try_fetch_existing_table</a></li><li><a href="#method.with_state_report_handler" title="with_state_report_handler">with_state_report_handler</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block trait-implementation"><li><a href="#impl-FlowEngine-for-StreamingEngine" title="FlowEngine">FlowEngine</a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block synthetic-implementation"><li><a href="#impl-Freeze-for-StreamingEngine" title="!Freeze">!Freeze</a></li><li><a href="#impl-RefUnwindSafe-for-StreamingEngine" title="!RefUnwindSafe">!RefUnwindSafe</a></li><li><a href="#impl-UnwindSafe-for-StreamingEngine" title="!UnwindSafe">!UnwindSafe</a></li><li><a href="#impl-Send-for-StreamingEngine" title="Send">Send</a></li><li><a href="#impl-Sync-for-StreamingEngine" title="Sync">Sync</a></li><li><a href="#impl-Unpin-for-StreamingEngine" title="Unpin">Unpin</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-Any-for-T-1" title="Any">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-T" title="Borrow&#60;T&#62;">Borrow&#60;T&#62;</a></li><li><a href="#impl-BorrowMut%3CT%3E-for-T" title="BorrowMut&#60;T&#62;">BorrowMut&#60;T&#62;</a></li><li><a href="#impl-Conv-for-T" title="Conv">Conv</a></li><li><a href="#impl-Convert%3CT%3E-for-V" title="Convert&#60;T&#62;">Convert&#60;T&#62;</a></li><li><a href="#impl-CoproductSubsetter%3CCNil,+HNil%3E-for-Choices" title="CoproductSubsetter&#60;CNil, HNil&#62;">CoproductSubsetter&#60;CNil, HNil&#62;</a></li><li><a href="#impl-ErasedDestructor-for-T" title="ErasedDestructor">ErasedDestructor</a></li><li><a href="#impl-FmtForward-for-T" title="FmtForward">FmtForward</a></li><li><a href="#impl-From%3CT%3E-for-T" title="From&#60;T&#62;">From&#60;T&#62;</a></li><li><a href="#impl-FutureExt-for-T" title="FutureExt">FutureExt</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&#60;U&#62;">Into&#60;U&#62;</a></li><li><a href="#impl-IntoEither-for-T" title="IntoEither">IntoEither</a></li><li><a href="#impl-IntoRequest%3CT%3E-for-T" title="IntoRequest&#60;T&#62;">IntoRequest&#60;T&#62;</a></li><li><a href="#impl-LayerExt%3CL%3E-for-L" title="LayerExt&#60;L&#62;">LayerExt&#60;L&#62;</a></li><li><a href="#impl-LiftInto%3CU,+I%3E-for-T" title="LiftInto&#60;U, I&#62;">LiftInto&#60;U, I&#62;</a></li><li><a href="#impl-MaybeSend-for-T" title="MaybeSend">MaybeSend</a></li><li><a href="#impl-OctetsInto%3CTarget%3E-for-Source" title="OctetsInto&#60;Target&#62;">OctetsInto&#60;Target&#62;</a></li><li><a href="#impl-Pipe-for-T" title="Pipe">Pipe</a></li><li><a href="#impl-Pointable-for-T" title="Pointable">Pointable</a></li><li><a href="#impl-PolicyExt-for-T" title="PolicyExt">PolicyExt</a></li><li><a href="#impl-Same-for-T" title="Same">Same</a></li><li><a href="#impl-Sculptor%3CHNil,+HNil%3E-for-Source" title="Sculptor&#60;HNil, HNil&#62;">Sculptor&#60;HNil, HNil&#62;</a></li><li><a href="#impl-ServiceExt-for-T" title="ServiceExt">ServiceExt</a></li><li><a href="#impl-SupersetOf%3CSS%3E-for-SP" title="SupersetOf&#60;SS&#62;">SupersetOf&#60;SS&#62;</a></li><li><a href="#impl-Tap-for-T" title="Tap">Tap</a></li><li><a href="#impl-TryConv-for-T" title="TryConv">TryConv</a></li><li><a href="#impl-TryFrom%3CU%3E-for-T" title="TryFrom&#60;U&#62;">TryFrom&#60;U&#62;</a></li><li><a href="#impl-TryInto%3CU%3E-for-T" title="TryInto&#60;U&#62;">TryInto&#60;U&#62;</a></li><li><a href="#impl-VZip%3CV%3E-for-T" title="VZip&#60;V&#62;">VZip&#60;V&#62;</a></li><li><a href="#impl-WithSubscriber-for-T" title="WithSubscriber">WithSubscriber</a></li><li><a href="#impl-Within%3CG2%3E-for-G1" title="Within&#60;G2&#62;">Within&#60;G2&#62;</a></li></ul></section><div id="rustdoc-modnav"><h2 class="in-crate"><a href="index.html">In crate flow</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">flow</a></div><h1>Struct <span class="struct">Streaming<wbr>Engine</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/flow/adapter.rs.html#160-186">Source</a> </span></div><pre class="rust item-decl"><code>pub struct StreamingEngine {<details class="toggle type-contents-toggle"><summary class="hideme"><span>Show 13 fields</span></summary>
pub worker_handles: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="adapter/worker/struct.WorkerHandle.html" title="struct flow::adapter::worker::WorkerHandle">WorkerHandle</a>&gt;,
worker_selector: Mutex&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;,
pub query_engine: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" href="../query/query_engine/trait.QueryEngine.html" title="trait query::query_engine::QueryEngine">QueryEngine</a>&gt;,
table_info_source: <a class="struct" href="adapter/table_source/struct.ManagedTableSource.html" title="struct flow::adapter::table_source::ManagedTableSource">ManagedTableSource</a>,
frontend_invoker: RwLock&lt;<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="struct.FrontendInvoker.html" title="struct flow::FrontendInvoker">FrontendInvoker</a>&gt;&gt;,
node_context: RwLock&lt;<a class="struct" href="adapter/node_context/struct.FlownodeContext.html" title="struct flow::adapter::node_context::FlownodeContext">FlownodeContext</a>&gt;,
refill_tasks: RwLock&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/collections/btree/map/struct.BTreeMap.html" title="struct alloc::collections::btree::map::BTreeMap">BTreeMap</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a>, <a class="struct" href="adapter/refill/struct.RefillTask.html" title="struct flow::adapter::refill::RefillTask">RefillTask</a>&gt;&gt;,
flow_err_collectors: RwLock&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/collections/btree/map/struct.BTreeMap.html" title="struct alloc::collections::btree::map::BTreeMap">BTreeMap</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a>, <a class="struct" href="compute/types/struct.ErrCollector.html" title="struct flow::compute::types::ErrCollector">ErrCollector</a>&gt;&gt;,
src_send_buf_lens: RwLock&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/collections/btree/map/struct.BTreeMap.html" title="struct alloc::collections::btree::map::BTreeMap">BTreeMap</a>&lt;<a class="type" href="../table/metadata/type.TableId.html" title="type table::metadata::TableId">TableId</a>, Receiver&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;&gt;&gt;,
tick_manager: <a class="struct" href="adapter/struct.FlowTickManager.html" title="struct flow::adapter::FlowTickManager">FlowTickManager</a>,
pub node_id: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>&gt;,
flush_lock: RwLock&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>&gt;,
state_report_handler: RwLock&lt;<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Receiver&lt;Sender&lt;<a class="struct" href="../common_meta/key/flow/flow_state/struct.FlowStat.html" title="struct common_meta::key::flow::flow_state::FlowStat">FlowStat</a>&gt;&gt;&gt;&gt;,
</details>}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>FlowNodeManager manages the state of all tasks in the flow node, which should be run on the same thread</p>
<p>The choice of timestamp is just using current system timestamp for now</p>
</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.worker_handles" class="structfield section-header"><a href="#structfield.worker_handles" class="anchor field">§</a><code>worker_handles: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="adapter/worker/struct.WorkerHandle.html" title="struct flow::adapter::worker::WorkerHandle">WorkerHandle</a>&gt;</code></span><div class="docblock"><p>The handler to the worker that will run the dataflow
which is <code>!Send</code> so a handle is used</p>
</div><span id="structfield.worker_selector" class="structfield section-header"><a href="#structfield.worker_selector" class="anchor field">§</a><code>worker_selector: Mutex&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;</code></span><div class="docblock"><p>The selector to select a worker to run the dataflow</p>
</div><span id="structfield.query_engine" class="structfield section-header"><a href="#structfield.query_engine" class="anchor field">§</a><code>query_engine: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" href="../query/query_engine/trait.QueryEngine.html" title="trait query::query_engine::QueryEngine">QueryEngine</a>&gt;</code></span><div class="docblock"><p>The query engine that will be used to parse the query and convert it to a dataflow plan</p>
</div><span id="structfield.table_info_source" class="structfield section-header"><a href="#structfield.table_info_source" class="anchor field">§</a><code>table_info_source: <a class="struct" href="adapter/table_source/struct.ManagedTableSource.html" title="struct flow::adapter::table_source::ManagedTableSource">ManagedTableSource</a></code></span><div class="docblock"><p>Getting table name and table schema from table info manager</p>
</div><span id="structfield.frontend_invoker" class="structfield section-header"><a href="#structfield.frontend_invoker" class="anchor field">§</a><code>frontend_invoker: RwLock&lt;<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="struct.FrontendInvoker.html" title="struct flow::FrontendInvoker">FrontendInvoker</a>&gt;&gt;</code></span><span id="structfield.node_context" class="structfield section-header"><a href="#structfield.node_context" class="anchor field">§</a><code>node_context: RwLock&lt;<a class="struct" href="adapter/node_context/struct.FlownodeContext.html" title="struct flow::adapter::node_context::FlownodeContext">FlownodeContext</a>&gt;</code></span><div class="docblock"><p>contains mapping from table name to global id, and table schema</p>
</div><span id="structfield.refill_tasks" class="structfield section-header"><a href="#structfield.refill_tasks" class="anchor field">§</a><code>refill_tasks: RwLock&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/collections/btree/map/struct.BTreeMap.html" title="struct alloc::collections::btree::map::BTreeMap">BTreeMap</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a>, <a class="struct" href="adapter/refill/struct.RefillTask.html" title="struct flow::adapter::refill::RefillTask">RefillTask</a>&gt;&gt;</code></span><div class="docblock"><p>Contains all refill tasks</p>
</div><span id="structfield.flow_err_collectors" class="structfield section-header"><a href="#structfield.flow_err_collectors" class="anchor field">§</a><code>flow_err_collectors: RwLock&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/collections/btree/map/struct.BTreeMap.html" title="struct alloc::collections::btree::map::BTreeMap">BTreeMap</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a>, <a class="struct" href="compute/types/struct.ErrCollector.html" title="struct flow::compute::types::ErrCollector">ErrCollector</a>&gt;&gt;</code></span><span id="structfield.src_send_buf_lens" class="structfield section-header"><a href="#structfield.src_send_buf_lens" class="anchor field">§</a><code>src_send_buf_lens: RwLock&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/collections/btree/map/struct.BTreeMap.html" title="struct alloc::collections::btree::map::BTreeMap">BTreeMap</a>&lt;<a class="type" href="../table/metadata/type.TableId.html" title="type table::metadata::TableId">TableId</a>, Receiver&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;&gt;&gt;</code></span><span id="structfield.tick_manager" class="structfield section-header"><a href="#structfield.tick_manager" class="anchor field">§</a><code>tick_manager: <a class="struct" href="adapter/struct.FlowTickManager.html" title="struct flow::adapter::FlowTickManager">FlowTickManager</a></code></span><span id="structfield.node_id" class="structfield section-header"><a href="#structfield.node_id" class="anchor field">§</a><code>node_id: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>&gt;</code></span><div class="docblock"><p>This node id is only available in distributed mode, on standalone mode this is guaranteed to be <code>None</code></p>
</div><span id="structfield.flush_lock" class="structfield section-header"><a href="#structfield.flush_lock" class="anchor field">§</a><code>flush_lock: RwLock&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>&gt;</code></span><div class="docblock"><p>Lock for flushing, will be <code>read</code> by <code>handle_inserts</code> and <code>write</code> by <code>flush_flow</code></p>
<p>So that a series of event like <code>inserts -&gt; flush</code> can be handled correctly</p>
</div><span id="structfield.state_report_handler" class="structfield section-header"><a href="#structfield.state_report_handler" class="anchor field">§</a><code>state_report_handler: RwLock&lt;<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Receiver&lt;Sender&lt;<a class="struct" href="../common_meta/key/flow/flow_state/struct.FlowStat.html" title="struct common_meta::key::flow::flow_state::FlowStat">FlowStat</a>&gt;&gt;&gt;&gt;</code></span><div class="docblock"><p>receive a oneshot sender to send state size report</p>
</div><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-StreamingEngine" class="impl"><a class="src rightside" href="../src/flow/adapter/flownode_impl.rs.html#945-1071">Source</a><a href="#impl-StreamingEngine" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.StreamingEngine.html" title="struct flow::StreamingEngine">StreamingEngine</a></h3></section></summary><div class="impl-items"><section id="method.handle_inserts_inner" class="method"><a class="src rightside" href="../src/flow/adapter/flownode_impl.rs.html#946-1070">Source</a><h4 class="code-header">async fn <a href="#method.handle_inserts_inner" class="fn">handle_inserts_inner</a>(
&amp;self,
request: InsertRequests,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="error/enum.Error.html" title="enum flow::error::Error">Error</a>&gt;</h4></section></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-StreamingEngine-1" class="impl"><a class="src rightside" href="../src/flow/adapter/refill.rs.html#43-158">Source</a><a href="#impl-StreamingEngine-1" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.StreamingEngine.html" title="struct flow::StreamingEngine">StreamingEngine</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.create_and_start_refill_flow_tasks" class="method"><a class="src rightside" href="../src/flow/adapter/refill.rs.html#45-55">Source</a><h4 class="code-header">pub async fn <a href="#method.create_and_start_refill_flow_tasks" class="fn">create_and_start_refill_flow_tasks</a>(
self: &amp;<a class="type" href="type.FlowStreamingEngineRef.html" title="type flow::FlowStreamingEngineRef">FlowStreamingEngineRef</a>,
flow_metadata_manager: &amp;<a class="type" href="../common_meta/key/flow/type.FlowMetadataManagerRef.html" title="type common_meta::key::flow::FlowMetadataManagerRef">FlowMetadataManagerRef</a>,
catalog_manager: &amp;<a class="type" href="../catalog/type.CatalogManagerRef.html" title="type catalog::CatalogManagerRef">CatalogManagerRef</a>,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="error/enum.Error.html" title="enum flow::error::Error">Error</a>&gt;</h4></section></summary><div class="docblock"><p>Create and start refill flow tasks in background</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.create_refill_flow_tasks" class="method"><a class="src rightside" href="../src/flow/adapter/refill.rs.html#58-130">Source</a><h4 class="code-header">pub async fn <a href="#method.create_refill_flow_tasks" class="fn">create_refill_flow_tasks</a>(
&amp;self,
flow_metadata_manager: &amp;<a class="type" href="../common_meta/key/flow/type.FlowMetadataManagerRef.html" title="type common_meta::key::flow::FlowMetadataManagerRef">FlowMetadataManagerRef</a>,
catalog_manager: &amp;<a class="type" href="../catalog/type.CatalogManagerRef.html" title="type catalog::CatalogManagerRef">CatalogManagerRef</a>,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="adapter/refill/struct.RefillTask.html" title="struct flow::adapter::refill::RefillTask">RefillTask</a>&gt;, <a class="enum" href="error/enum.Error.html" title="enum flow::error::Error">Error</a>&gt;</h4></section></summary><div class="docblock"><p>Create a series of tasks to refill flow</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.starting_refill_flows" class="method"><a class="src rightside" href="../src/flow/adapter/refill.rs.html#133-157">Source</a><h4 class="code-header">pub(crate) async fn <a href="#method.starting_refill_flows" class="fn">starting_refill_flows</a>(
self: &amp;<a class="type" href="type.FlowStreamingEngineRef.html" title="type flow::FlowStreamingEngineRef">FlowStreamingEngineRef</a>,
tasks: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="adapter/refill/struct.RefillTask.html" title="struct flow::adapter::refill::RefillTask">RefillTask</a>&gt;,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="error/enum.Error.html" title="enum flow::error::Error">Error</a>&gt;</h4></section></summary><div class="docblock"><p>Starting to refill flows, if any error occurs, will rebuild the flow and retry</p>
</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-StreamingEngine-2" class="impl"><a class="src rightside" href="../src/flow/adapter/stat.rs.html#21-51">Source</a><a href="#impl-StreamingEngine-2" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.StreamingEngine.html" title="struct flow::StreamingEngine">StreamingEngine</a></h3></section></summary><div class="impl-items"><section id="method.gen_state_report" class="method"><a class="src rightside" href="../src/flow/adapter/stat.rs.html#22-50">Source</a><h4 class="code-header">pub async fn <a href="#method.gen_state_report" class="fn">gen_state_report</a>(&amp;self) -&gt; <a class="struct" href="../common_meta/key/flow/flow_state/struct.FlowStat.html" title="struct common_meta::key::flow::flow_state::FlowStat">FlowStat</a></h4></section></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-StreamingEngine-3" class="impl"><a class="src rightside" href="../src/flow/adapter/util.rs.html#37-141">Source</a><a href="#impl-StreamingEngine-3" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.StreamingEngine.html" title="struct flow::StreamingEngine">StreamingEngine</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.get_worker_handle_for_create_flow" class="method"><a class="src rightside" href="../src/flow/adapter/util.rs.html#39-51">Source</a><h4 class="code-header">pub(crate) async fn <a href="#method.get_worker_handle_for_create_flow" class="fn">get_worker_handle_for_create_flow</a>(&amp;self) -&gt; &amp;<a class="struct" href="adapter/worker/struct.WorkerHandle.html" title="struct flow::adapter::worker::WorkerHandle">WorkerHandle</a></h4></section></summary><div class="docblock"><p>Get a worker handle for creating flow, using round robin to select a worker</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.create_table_from_relation" class="method"><a class="src rightside" href="../src/flow/adapter/util.rs.html#54-85">Source</a><h4 class="code-header">pub(crate) async fn <a href="#method.create_table_from_relation" class="fn">create_table_from_relation</a>(
&amp;self,
flow_name: &amp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>,
table_name: &amp;[<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.array.html">3</a>],
relation_desc: &amp;<a class="struct" href="repr/relation/struct.RelationDesc.html" title="struct flow::repr::relation::RelationDesc">RelationDesc</a>,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>, <a class="enum" href="error/enum.Error.html" title="enum flow::error::Error">Error</a>&gt;</h4></section></summary><div class="docblock"><p>Create table from given schema(will adjust to add auto column if needed), return true if table is created</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.try_fetch_existing_table" class="method"><a class="src rightside" href="../src/flow/adapter/util.rs.html#88-110">Source</a><h4 class="code-header">pub(crate) async fn <a href="#method.try_fetch_existing_table" class="fn">try_fetch_existing_table</a>(
&amp;self,
table_name: &amp;[<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.array.html">3</a>],
) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>, <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;ColumnSchema&gt;)&gt;, <a class="enum" href="error/enum.Error.html" title="enum flow::error::Error">Error</a>&gt;</h4></section></summary><div class="docblock"><p>Try fetch table with adjusted schema(added auto column if needed)</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.submit_create_sink_table_ddl" class="method"><a class="src rightside" href="../src/flow/adapter/util.rs.html#113-140">Source</a><h4 class="code-header">pub(crate) async fn <a href="#method.submit_create_sink_table_ddl" class="fn">submit_create_sink_table_ddl</a>(
&amp;self,
create_table: CreateTableExpr,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="error/enum.Error.html" title="enum flow::error::Error">Error</a>&gt;</h4></section></summary><div class="docblock"><p>submit a create table ddl</p>
</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-StreamingEngine-4" class="impl"><a class="src rightside" href="../src/flow/adapter.rs.html#189-253">Source</a><a href="#impl-StreamingEngine-4" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.StreamingEngine.html" title="struct flow::StreamingEngine">StreamingEngine</a></h3><div class="docblock"><p>Building FlownodeManager</p>
</div></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.set_frontend_invoker" class="method"><a class="src rightside" href="../src/flow/adapter.rs.html#191-193">Source</a><h4 class="code-header">pub async fn <a href="#method.set_frontend_invoker" class="fn">set_frontend_invoker</a>(&amp;self, frontend: <a class="struct" href="struct.FrontendInvoker.html" title="struct flow::FrontendInvoker">FrontendInvoker</a>)</h4></section></summary><div class="docblock"><p>set frontend invoker</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.new" class="method"><a class="src rightside" href="../src/flow/adapter.rs.html#196-223">Source</a><h4 class="code-header">pub fn <a href="#method.new" class="fn">new</a>(
node_id: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>&gt;,
query_engine: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" href="../query/query_engine/trait.QueryEngine.html" title="trait query::query_engine::QueryEngine">QueryEngine</a>&gt;,
table_meta: <a class="type" href="../common_meta/key/type.TableMetadataManagerRef.html" title="type common_meta::key::TableMetadataManagerRef">TableMetadataManagerRef</a>,
) -&gt; Self</h4></section></summary><div class="docblock"><p>Create <strong>without</strong> setting <code>frontend_invoker</code></p>
</div></details><section id="method.with_state_report_handler" class="method"><a class="src rightside" href="../src/flow/adapter.rs.html#225-228">Source</a><h4 class="code-header">pub async fn <a href="#method.with_state_report_handler" class="fn">with_state_report_handler</a>(
self,
handler: Receiver&lt;Sender&lt;<a class="struct" href="../common_meta/key/flow/flow_state/struct.FlowStat.html" title="struct common_meta::key::flow::flow_state::FlowStat">FlowStat</a>&gt;&gt;,
) -&gt; Self</h4></section><details class="toggle method-toggle" open><summary><section id="method.new_with_workers" class="method"><a class="src rightside" href="../src/flow/adapter.rs.html#231-247">Source</a><h4 class="code-header">pub fn <a href="#method.new_with_workers" class="fn">new_with_workers</a>&lt;'s&gt;(
node_id: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>&gt;,
query_engine: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" href="../query/query_engine/trait.QueryEngine.html" title="trait query::query_engine::QueryEngine">QueryEngine</a>&gt;,
table_meta: <a class="type" href="../common_meta/key/type.TableMetadataManagerRef.html" title="type common_meta::key::TableMetadataManagerRef">TableMetadataManagerRef</a>,
num_workers: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>,
) -&gt; (Self, <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="adapter/worker/struct.Worker.html" title="struct flow::adapter::worker::Worker">Worker</a>&lt;'s&gt;&gt;)</h4></section></summary><div class="docblock"><p>Create a flownode manager with one worker</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.add_worker_handle" class="method"><a class="src rightside" href="../src/flow/adapter.rs.html#250-252">Source</a><h4 class="code-header">pub fn <a href="#method.add_worker_handle" class="fn">add_worker_handle</a>(&amp;mut self, handle: <a class="struct" href="adapter/worker/struct.WorkerHandle.html" title="struct flow::adapter::worker::WorkerHandle">WorkerHandle</a>)</h4></section></summary><div class="docblock"><p>add a worker handler to manager, meaning this corresponding worker is under its manage</p>
</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-StreamingEngine-5" class="impl"><a class="src rightside" href="../src/flow/adapter.rs.html#288-556">Source</a><a href="#impl-StreamingEngine-5" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.StreamingEngine.html" title="struct flow::StreamingEngine">StreamingEngine</a></h3><div class="docblock"><p>This impl block contains methods to send writeback requests to frontend</p>
</div></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.send_writeback_requests" class="method"><a class="src rightside" href="../src/flow/adapter.rs.html#290-446">Source</a><h4 class="code-header">pub async fn <a href="#method.send_writeback_requests" class="fn">send_writeback_requests</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, <a class="enum" href="error/enum.Error.html" title="enum flow::error::Error">Error</a>&gt;</h4></section></summary><div class="docblock"><p>Return the number of requests it made</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.generate_writeback_request" class="method"><a class="src rightside" href="../src/flow/adapter.rs.html#449-473">Source</a><h4 class="code-header">pub async fn <a href="#method.generate_writeback_request" class="fn">generate_writeback_request</a>(
&amp;self,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/collections/btree/map/struct.BTreeMap.html" title="struct alloc::collections::btree::map::BTreeMap">BTreeMap</a>&lt;[<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.array.html">3</a>], <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="enum" href="adapter/enum.DiffRequest.html" title="enum flow::adapter::DiffRequest">DiffRequest</a>&gt;&gt;, <a class="enum" href="error/enum.Error.html" title="enum flow::error::Error">Error</a>&gt;</h4></section></summary><div class="docblock"><p>Generate writeback request for all sink table</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.fetch_table_pk_schema" class="method"><a class="src rightside" href="../src/flow/adapter.rs.html#476-502">Source</a><h4 class="code-header">async fn <a href="#method.fetch_table_pk_schema" class="fn">fetch_table_pk_schema</a>(
&amp;self,
table_name: &amp;[<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.array.html">3</a>],
) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>&gt;, <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;, <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="../datatypes/schema/column_schema/struct.ColumnSchema.html" title="struct datatypes::schema::column_schema::ColumnSchema">ColumnSchema</a>&gt;)&gt;, <a class="enum" href="error/enum.Error.html" title="enum flow::error::Error">Error</a>&gt;</h4></section></summary><div class="docblock"><p>Fetch table schema and primary key from table info source, if table not exist return None</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.adjust_auto_created_table_schema" class="method"><a class="src rightside" href="../src/flow/adapter.rs.html#508-555">Source</a><h4 class="code-header">async fn <a href="#method.adjust_auto_created_table_schema" class="fn">adjust_auto_created_table_schema</a>(
&amp;self,
schema: &amp;<a class="struct" href="repr/relation/struct.RelationDesc.html" title="struct flow::repr::relation::RelationDesc">RelationDesc</a>,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>&gt;, <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="../datatypes/schema/column_schema/struct.ColumnSchema.html" title="struct datatypes::schema::column_schema::ColumnSchema">ColumnSchema</a>&gt;, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>), <a class="enum" href="error/enum.Error.html" title="enum flow::error::Error">Error</a>&gt;</h4></section></summary><div class="docblock"><p>return (primary keys, schema and if the table have a placeholder timestamp column)
schema of the table comes from flows output plan</p>
<p>adjust to add <code>update_at</code> column and ts placeholder if needed</p>
</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-StreamingEngine-6" class="impl"><a class="src rightside" href="../src/flow/adapter.rs.html#559-752">Source</a><a href="#impl-StreamingEngine-6" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.StreamingEngine.html" title="struct flow::StreamingEngine">StreamingEngine</a></h3><div class="docblock"><p>Flow Runtime related methods</p>
</div></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.start_state_report_handler" class="method"><a class="src rightside" href="../src/flow/adapter.rs.html#563-579">Source</a><h4 class="code-header">async fn <a href="#method.start_state_report_handler" class="fn">start_state_report_handler</a>(self: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;Self&gt;) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;JoinHandle&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>&gt;&gt;</h4></section></summary><div class="docblock"><p>Start state report handler, which will receive a sender from HeartbeatTask to send state size report back</p>
<p>if heartbeat task is shutdown, this future will exit too</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.run_background" class="method"><a class="src rightside" href="../src/flow/adapter.rs.html#582-591">Source</a><h4 class="code-header">pub fn <a href="#method.run_background" class="fn">run_background</a>(
self: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;Self&gt;,
shutdown: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Receiver&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>&gt;&gt;,
) -&gt; JoinHandle&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>&gt;</h4></section></summary><div class="docblock"><p>run in common_runtime background runtime</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.log_all_errors" class="method"><a class="src rightside" href="../src/flow/adapter.rs.html#594-605">Source</a><h4 class="code-header">pub async fn <a href="#method.log_all_errors" class="fn">log_all_errors</a>(&amp;self)</h4></section></summary><div class="docblock"><p>log all flow errors</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.run" class="method"><a class="src rightside" href="../src/flow/adapter.rs.html#610-689">Source</a><h4 class="code-header">pub async fn <a href="#method.run" class="fn">run</a>(&amp;self, shutdown: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Receiver&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>&gt;&gt;)</h4></section></summary><div class="docblock"><p>Trigger dataflow running, and then send writeback request to the source sender</p>
<p>note that this method didnt handle input mirror request, as this should be handled by grpc server</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.run_available" class="method"><a class="src rightside" href="../src/flow/adapter.rs.html#698-727">Source</a><h4 class="code-header">pub async fn <a href="#method.run_available" class="fn">run_available</a>(&amp;self, blocking: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, <a class="enum" href="error/enum.Error.html" title="enum flow::error::Error">Error</a>&gt;</h4></section></summary><div class="docblock"><p>Run all available subgraph in the flow node
This will try to run all dataflow in this node</p>
<p>set <code>blocking</code> to true to wait until worker finish running
false to just trigger run and return immediately
return numbers of rows send to worker(Inaccuary)
TODO(discord9): add flag for subgraph that have input since last run</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.handle_write_request" class="method"><a class="src rightside" href="../src/flow/adapter.rs.html#730-751">Source</a><h4 class="code-header">pub async fn <a href="#method.handle_write_request" class="fn">handle_write_request</a>(
&amp;self,
region_id: <a class="struct" href="../store_api/storage/descriptors/struct.RegionId.html" title="struct store_api::storage::descriptors::RegionId">RegionId</a>,
rows: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;(<a class="struct" href="repr/struct.Row.html" title="struct flow::repr::Row">Row</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>)&gt;,
batch_datatypes: &amp;[<a class="enum" href="../datatypes/data_type/enum.ConcreteDataType.html" title="enum datatypes::data_type::ConcreteDataType">ConcreteDataType</a>],
) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="error/enum.Error.html" title="enum flow::error::Error">Error</a>&gt;</h4></section></summary><div class="docblock"><p>send write request to related source sender</p>
</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-StreamingEngine-7" class="impl"><a class="src rightside" href="../src/flow/adapter.rs.html#755-939">Source</a><a href="#impl-StreamingEngine-7" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.StreamingEngine.html" title="struct flow::StreamingEngine">StreamingEngine</a></h3><div class="docblock"><p>Create&amp;Remove flow</p>
</div></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.remove_flow_inner" class="method"><a class="src rightside" href="../src/flow/adapter.rs.html#757-766">Source</a><h4 class="code-header">pub async fn <a href="#method.remove_flow_inner" class="fn">remove_flow_inner</a>(&amp;self, flow_id: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="error/enum.Error.html" title="enum flow::error::Error">Error</a>&gt;</h4></section></summary><div class="docblock"><p>remove a flow by its id</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.create_flow_inner" class="method"><a class="src rightside" href="../src/flow/adapter.rs.html#773-912">Source</a><h4 class="code-header">pub async fn <a href="#method.create_flow_inner" class="fn">create_flow_inner</a>(
&amp;self,
args: <a class="struct" href="engine/struct.CreateFlowArgs.html" title="struct flow::engine::CreateFlowArgs">CreateFlowArgs</a>,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a>&gt;, <a class="enum" href="error/enum.Error.html" title="enum flow::error::Error">Error</a>&gt;</h4></section></summary><div class="docblock"><p>Return task id if a new task is created, otherwise return None</p>
<p>steps to create task:</p>
<ol>
<li>parse query into typed plan(and optional parse expire_after expr)</li>
<li>render source/sink with output table id and used input table id</li>
</ol>
</div></details><section id="method.flush_flow_inner" class="method"><a class="src rightside" href="../src/flow/adapter.rs.html#914-927">Source</a><h4 class="code-header">pub async fn <a href="#method.flush_flow_inner" class="fn">flush_flow_inner</a>(&amp;self, flow_id: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, <a class="enum" href="error/enum.Error.html" title="enum flow::error::Error">Error</a>&gt;</h4></section><section id="method.flow_exist_inner" class="method"><a class="src rightside" href="../src/flow/adapter.rs.html#929-938">Source</a><h4 class="code-header">pub async fn <a href="#method.flow_exist_inner" class="fn">flow_exist_inner</a>(&amp;self, flow_id: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>, <a class="enum" href="error/enum.Error.html" title="enum flow::error::Error">Error</a>&gt;</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-FlowEngine-for-StreamingEngine" class="impl"><a class="src rightside" href="../src/flow/adapter/flownode_impl.rs.html#883-926">Source</a><a href="#impl-FlowEngine-for-StreamingEngine" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="engine/trait.FlowEngine.html" title="trait flow::engine::FlowEngine">FlowEngine</a> for <a class="struct" href="struct.StreamingEngine.html" title="struct flow::StreamingEngine">StreamingEngine</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.create_flow" class="method trait-impl"><a class="src rightside" href="../src/flow/adapter/flownode_impl.rs.html#884-886">Source</a><a href="#method.create_flow" class="anchor">§</a><h4 class="code-header">async fn <a href="engine/trait.FlowEngine.html#tymethod.create_flow" class="fn">create_flow</a>(&amp;self, args: <a class="struct" href="engine/struct.CreateFlowArgs.html" title="struct flow::engine::CreateFlowArgs">CreateFlowArgs</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a>&gt;, <a class="enum" href="error/enum.Error.html" title="enum flow::error::Error">Error</a>&gt;</h4></section></summary><div class='docblock'>Create a flow using the provided arguments, return previous flow id if exists and is replaced</div></details><details class="toggle method-toggle" open><summary><section id="method.remove_flow" class="method trait-impl"><a class="src rightside" href="../src/flow/adapter/flownode_impl.rs.html#888-890">Source</a><a href="#method.remove_flow" class="anchor">§</a><h4 class="code-header">async fn <a href="engine/trait.FlowEngine.html#tymethod.remove_flow" class="fn">remove_flow</a>(&amp;self, flow_id: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="error/enum.Error.html" title="enum flow::error::Error">Error</a>&gt;</h4></section></summary><div class='docblock'>Remove a flow by its ID</div></details><details class="toggle method-toggle" open><summary><section id="method.flush_flow" class="method trait-impl"><a class="src rightside" href="../src/flow/adapter/flownode_impl.rs.html#892-894">Source</a><a href="#method.flush_flow" class="anchor">§</a><h4 class="code-header">async fn <a href="engine/trait.FlowEngine.html#tymethod.flush_flow" class="fn">flush_flow</a>(&amp;self, flow_id: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, <a class="enum" href="error/enum.Error.html" title="enum flow::error::Error">Error</a>&gt;</h4></section></summary><div class='docblock'>Flush the flow, return the number of rows flushed</div></details><details class="toggle method-toggle" open><summary><section id="method.flow_exist" class="method trait-impl"><a class="src rightside" href="../src/flow/adapter/flownode_impl.rs.html#896-898">Source</a><a href="#method.flow_exist" class="anchor">§</a><h4 class="code-header">async fn <a href="engine/trait.FlowEngine.html#tymethod.flow_exist" class="fn">flow_exist</a>(&amp;self, flow_id: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>, <a class="enum" href="error/enum.Error.html" title="enum flow::error::Error">Error</a>&gt;</h4></section></summary><div class='docblock'>Check if the flow exists</div></details><details class="toggle method-toggle" open><summary><section id="method.list_flows" class="method trait-impl"><a class="src rightside" href="../src/flow/adapter/flownode_impl.rs.html#900-908">Source</a><a href="#method.list_flows" class="anchor">§</a><h4 class="code-header">async fn <a href="engine/trait.FlowEngine.html#tymethod.list_flows" class="fn">list_flows</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&lt;Item = <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a>&gt;, <a class="enum" href="error/enum.Error.html" title="enum flow::error::Error">Error</a>&gt;</h4></section></summary><div class='docblock'>List all flows</div></details><details class="toggle method-toggle" open><summary><section id="method.handle_flow_inserts" class="method trait-impl"><a class="src rightside" href="../src/flow/adapter/flownode_impl.rs.html#910-915">Source</a><a href="#method.handle_flow_inserts" class="anchor">§</a><h4 class="code-header">async fn <a href="engine/trait.FlowEngine.html#tymethod.handle_flow_inserts" class="fn">handle_flow_inserts</a>(
&amp;self,
request: InsertRequests,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="error/enum.Error.html" title="enum flow::error::Error">Error</a>&gt;</h4></section></summary><div class='docblock'>Handle the insert requests for the flow</div></details><section id="method.handle_mark_window_dirty" class="method trait-impl"><a class="src rightside" href="../src/flow/adapter/flownode_impl.rs.html#917-925">Source</a><a href="#method.handle_mark_window_dirty" class="anchor">§</a><h4 class="code-header">async fn <a href="engine/trait.FlowEngine.html#tymethod.handle_mark_window_dirty" class="fn">handle_mark_window_dirty</a>(
&amp;self,
_req: DirtyWindowRequests,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="error/enum.Error.html" title="enum flow::error::Error">Error</a>&gt;</h4></section></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-StreamingEngine" class="impl"><a href="#impl-Freeze-for-StreamingEngine" class="anchor">§</a><h3 class="code-header">impl !<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Freeze.html" title="trait core::marker::Freeze">Freeze</a> for <a class="struct" href="struct.StreamingEngine.html" title="struct flow::StreamingEngine">StreamingEngine</a></h3></section><section id="impl-RefUnwindSafe-for-StreamingEngine" class="impl"><a href="#impl-RefUnwindSafe-for-StreamingEngine" class="anchor">§</a><h3 class="code-header">impl !<a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.StreamingEngine.html" title="struct flow::StreamingEngine">StreamingEngine</a></h3></section><section id="impl-Send-for-StreamingEngine" class="impl"><a href="#impl-Send-for-StreamingEngine" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.StreamingEngine.html" title="struct flow::StreamingEngine">StreamingEngine</a></h3></section><section id="impl-Sync-for-StreamingEngine" class="impl"><a href="#impl-Sync-for-StreamingEngine" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.StreamingEngine.html" title="struct flow::StreamingEngine">StreamingEngine</a></h3></section><section id="impl-Unpin-for-StreamingEngine" class="impl"><a href="#impl-Unpin-for-StreamingEngine" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.StreamingEngine.html" title="struct flow::StreamingEngine">StreamingEngine</a></h3></section><section id="impl-UnwindSafe-for-StreamingEngine" class="impl"><a href="#impl-UnwindSafe-for-StreamingEngine" class="anchor">§</a><h3 class="code-header">impl !<a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.StreamingEngine.html" title="struct flow::StreamingEngine">StreamingEngine</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/nightly/src/core/any.rs.html#138">Source</a><a href="#impl-Any-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/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/nightly/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/nightly/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/nightly/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&amp;self) -&gt; <a class="struct" href="https://doc.rust-lang.org/nightly/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/nightly/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/nightly/src/core/borrow.rs.html#212">Source</a><a href="#impl-Borrow%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a>&lt;T&gt; for T<div class="where">where
T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/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/nightly/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/nightly/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/nightly/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/nightly/src/core/borrow.rs.html#221">Source</a><a href="#impl-BorrowMut%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a>&lt;T&gt; for T<div class="where">where
T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/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/nightly/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/nightly/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Conv-for-T" class="impl"><a href="#impl-Conv-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; Conv for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.conv" class="method trait-impl"><a href="#method.conv" class="anchor">§</a><h4 class="code-header">fn <a class="fn">conv</a>&lt;T&gt;(self) -&gt; T<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;T&gt;,</div></h4></section></summary><div class='docblock'>Converts <code>self</code> into <code>T</code> using <code>Into&lt;T&gt;</code>. <a>Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Convert%3CT%3E-for-V" class="impl"><a href="#impl-Convert%3CT%3E-for-V" class="anchor">§</a><h3 class="code-header">impl&lt;T, V&gt; Convert&lt;T&gt; for V<div class="where">where
V: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;T&gt;,</div></h3></section></summary><div class="impl-items"><section id="method.convert" class="method trait-impl"><a href="#method.convert" class="anchor">§</a><h4 class="code-header">fn <a class="fn">convert</a>(value: Self) -&gt; T</h4></section><section id="method.convert_box" class="method trait-impl"><a href="#method.convert_box" class="anchor">§</a><h4 class="code-header">fn <a class="fn">convert_box</a>(value: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;Self&gt;) -&gt; <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;T&gt;</h4></section><section id="method.convert_vec" class="method trait-impl"><a href="#method.convert_vec" class="anchor">§</a><h4 class="code-header">fn <a class="fn">convert_vec</a>(value: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;Self&gt;) -&gt; <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;T&gt;</h4></section><section id="method.convert_vec_box" class="method trait-impl"><a href="#method.convert_vec_box" class="anchor">§</a><h4 class="code-header">fn <a class="fn">convert_vec_box</a>(value: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;Self&gt;&gt;) -&gt; <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;T&gt;&gt;</h4></section><section id="method.convert_matrix" class="method trait-impl"><a href="#method.convert_matrix" class="anchor">§</a><h4 class="code-header">fn <a class="fn">convert_matrix</a>(value: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;Self&gt;&gt;) -&gt; <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;T&gt;&gt;</h4></section><section id="method.convert_option" class="method trait-impl"><a href="#method.convert_option" class="anchor">§</a><h4 class="code-header">fn <a class="fn">convert_option</a>(value: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self&gt;) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;T&gt;</h4></section><section id="method.convert_option_box" class="method trait-impl"><a href="#method.convert_option_box" class="anchor">§</a><h4 class="code-header">fn <a class="fn">convert_option_box</a>(value: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;Self&gt;&gt;) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;T&gt;&gt;</h4></section><section id="method.convert_option_vec" class="method trait-impl"><a href="#method.convert_option_vec" class="anchor">§</a><h4 class="code-header">fn <a class="fn">convert_option_vec</a>(value: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;Self&gt;&gt;) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;T&gt;&gt;</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-CoproductSubsetter%3CCNil,+HNil%3E-for-Choices" class="impl"><a href="#impl-CoproductSubsetter%3CCNil,+HNil%3E-for-Choices" class="anchor">§</a><h3 class="code-header">impl&lt;Choices&gt; CoproductSubsetter&lt;CNil, HNil&gt; for Choices</h3></section></summary><div class="impl-items"><section id="associatedtype.Remainder" class="associatedtype trait-impl"><a href="#associatedtype.Remainder" class="anchor">§</a><h4 class="code-header">type <a class="associatedtype">Remainder</a> = Choices</h4></section><details class="toggle method-toggle" open><summary><section id="method.subset" class="method trait-impl"><a href="#method.subset" class="anchor">§</a><h4 class="code-header">fn <a class="fn">subset</a>(
self,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;CNil, &lt;Choices as CoproductSubsetter&lt;CNil, HNil&gt;&gt;::Remainder&gt;</h4></section></summary><div class='docblock'>Extract a subset of the possible types in a coproduct (or get the remaining possibilities) <a>Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-FmtForward-for-T" class="impl"><a href="#impl-FmtForward-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; FmtForward for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt_binary" class="method trait-impl"><a href="#method.fmt_binary" class="anchor">§</a><h4 class="code-header">fn <a class="fn">fmt_binary</a>(self) -&gt; FmtBinary&lt;Self&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Binary.html" title="trait core::fmt::Binary">Binary</a>,</div></h4></section></summary><div class='docblock'>Causes <code>self</code> to use its <code>Binary</code> implementation when <code>Debug</code>-formatted.</div></details><details class="toggle method-toggle" open><summary><section id="method.fmt_display" class="method trait-impl"><a href="#method.fmt_display" class="anchor">§</a><h4 class="code-header">fn <a class="fn">fmt_display</a>(self) -&gt; FmtDisplay&lt;Self&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Display.html" title="trait core::fmt::Display">Display</a>,</div></h4></section></summary><div class='docblock'>Causes <code>self</code> to use its <code>Display</code> implementation when
<code>Debug</code>-formatted.</div></details><details class="toggle method-toggle" open><summary><section id="method.fmt_lower_exp" class="method trait-impl"><a href="#method.fmt_lower_exp" class="anchor">§</a><h4 class="code-header">fn <a class="fn">fmt_lower_exp</a>(self) -&gt; FmtLowerExp&lt;Self&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.LowerExp.html" title="trait core::fmt::LowerExp">LowerExp</a>,</div></h4></section></summary><div class='docblock'>Causes <code>self</code> to use its <code>LowerExp</code> implementation when
<code>Debug</code>-formatted.</div></details><details class="toggle method-toggle" open><summary><section id="method.fmt_lower_hex" class="method trait-impl"><a href="#method.fmt_lower_hex" class="anchor">§</a><h4 class="code-header">fn <a class="fn">fmt_lower_hex</a>(self) -&gt; FmtLowerHex&lt;Self&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.LowerHex.html" title="trait core::fmt::LowerHex">LowerHex</a>,</div></h4></section></summary><div class='docblock'>Causes <code>self</code> to use its <code>LowerHex</code> implementation when
<code>Debug</code>-formatted.</div></details><details class="toggle method-toggle" open><summary><section id="method.fmt_octal" class="method trait-impl"><a href="#method.fmt_octal" class="anchor">§</a><h4 class="code-header">fn <a class="fn">fmt_octal</a>(self) -&gt; FmtOctal&lt;Self&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Octal.html" title="trait core::fmt::Octal">Octal</a>,</div></h4></section></summary><div class='docblock'>Causes <code>self</code> to use its <code>Octal</code> implementation when <code>Debug</code>-formatted.</div></details><details class="toggle method-toggle" open><summary><section id="method.fmt_pointer" class="method trait-impl"><a href="#method.fmt_pointer" class="anchor">§</a><h4 class="code-header">fn <a class="fn">fmt_pointer</a>(self) -&gt; FmtPointer&lt;Self&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Pointer.html" title="trait core::fmt::Pointer">Pointer</a>,</div></h4></section></summary><div class='docblock'>Causes <code>self</code> to use its <code>Pointer</code> implementation when
<code>Debug</code>-formatted.</div></details><details class="toggle method-toggle" open><summary><section id="method.fmt_upper_exp" class="method trait-impl"><a href="#method.fmt_upper_exp" class="anchor">§</a><h4 class="code-header">fn <a class="fn">fmt_upper_exp</a>(self) -&gt; FmtUpperExp&lt;Self&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.UpperExp.html" title="trait core::fmt::UpperExp">UpperExp</a>,</div></h4></section></summary><div class='docblock'>Causes <code>self</code> to use its <code>UpperExp</code> implementation when
<code>Debug</code>-formatted.</div></details><details class="toggle method-toggle" open><summary><section id="method.fmt_upper_hex" class="method trait-impl"><a href="#method.fmt_upper_hex" class="anchor">§</a><h4 class="code-header">fn <a class="fn">fmt_upper_hex</a>(self) -&gt; FmtUpperHex&lt;Self&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.UpperHex.html" title="trait core::fmt::UpperHex">UpperHex</a>,</div></h4></section></summary><div class='docblock'>Causes <code>self</code> to use its <code>UpperHex</code> implementation when
<code>Debug</code>-formatted.</div></details><details class="toggle method-toggle" open><summary><section id="method.fmt_list" class="method trait-impl"><a href="#method.fmt_list" class="anchor">§</a><h4 class="code-header">fn <a class="fn">fmt_list</a>(self) -&gt; FmtList&lt;Self&gt;<div class="where">where
&amp;'a Self: for&lt;'a&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>,</div></h4></section></summary><div class='docblock'>Formats each item in a sequence. <a>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/nightly/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&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt; for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/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/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -&gt; T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p>
</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-FutureExt-for-T" class="impl"><a href="#impl-FutureExt-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; FutureExt for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.with_context" class="method trait-impl"><a href="#method.with_context" class="anchor">§</a><h4 class="code-header">fn <a class="fn">with_context</a>(self, otel_cx: Context) -&gt; WithContext&lt;Self&gt;</h4></section></summary><div class='docblock'>Attaches the provided <a href="Context"><code>Context</code></a> to this type, returning a <code>WithContext</code>
wrapper. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_current_context" class="method trait-impl"><a href="#method.with_current_context" class="anchor">§</a><h4 class="code-header">fn <a class="fn">with_current_context</a>(self) -&gt; WithContext&lt;Self&gt;</h4></section></summary><div class='docblock'>Attaches the current <a href="Context"><code>Context</code></a> to this type, returning a <code>WithContext</code>
wrapper. <a>Read more</a></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&lt;T&gt; 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) -&gt; Instrumented&lt;Self&gt;</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) -&gt; Instrumented&lt;Self&gt;</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/nightly/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&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;U&gt; for T<div class="where">where
U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt;,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/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/nightly/core/convert/trait.Into.html#tymethod.into" class="fn">into</a>(self) -&gt; U</h4></section></summary><div class="docblock"><p>Calls <code>U::from(self)</code>.</p>
<p>That is, this conversion is whatever the implementation of
<code><a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt; for U</code> chooses to do.</p>
</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-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&lt;T&gt; <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/nightly/std/primitive.bool.html">bool</a>) -&gt; <a class="enum" href="https://docs.rs/either/1/either/enum.Either.html" title="enum either::Either">Either</a>&lt;Self, Self&gt;</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&lt;Self, Self&gt;</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&lt;Self, Self&gt;</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>&lt;F&gt;(self, into_left: F) -&gt; <a class="enum" href="https://docs.rs/either/1/either/enum.Either.html" title="enum either::Either">Either</a>&lt;Self, Self&gt;<div class="where">where
F: <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(&amp;Self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/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&lt;Self, Self&gt;</code></a>
if <code>into_left(&amp;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&lt;Self, Self&gt;</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-IntoRequest%3CT%3E-for-T" class="impl"><a href="#impl-IntoRequest%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; IntoRequest&lt;T&gt; for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into_request" class="method trait-impl"><a href="#method.into_request" class="anchor">§</a><h4 class="code-header">fn <a class="fn">into_request</a>(self) -&gt; Request&lt;T&gt;</h4></section></summary><div class='docblock'>Wrap the input message <code>T</code> in a <code>tonic::Request</code></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-LayerExt%3CL%3E-for-L" class="impl"><a href="#impl-LayerExt%3CL%3E-for-L" class="anchor">§</a><h3 class="code-header">impl&lt;L&gt; LayerExt&lt;L&gt; for L</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.named_layer" class="method trait-impl"><a href="#method.named_layer" class="anchor">§</a><h4 class="code-header">fn <a class="fn">named_layer</a>&lt;S&gt;(&amp;self, service: S) -&gt; Layered&lt;&lt;L as Layer&lt;S&gt;&gt;::Service, S&gt;<div class="where">where
L: Layer&lt;S&gt;,</div></h4></section></summary><div class='docblock'>Applies the layer to a service and wraps it in [<code>Layered</code>].</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-LiftInto%3CU,+I%3E-for-T" class="impl"><a href="#impl-LiftInto%3CU,+I%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T, U, I&gt; LiftInto&lt;U, I&gt; for T<div class="where">where
U: LiftFrom&lt;T, I&gt;,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.lift_into" class="method trait-impl"><a href="#method.lift_into" class="anchor">§</a><h4 class="code-header">fn <a class="fn">lift_into</a>(self) -&gt; U</h4></section></summary><div class='docblock'>Performs the indexed conversion.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-OctetsInto%3CTarget%3E-for-Source" class="impl"><a href="#impl-OctetsInto%3CTarget%3E-for-Source" class="anchor">§</a><h3 class="code-header">impl&lt;Source, Target&gt; OctetsInto&lt;Target&gt; for Source<div class="where">where
Target: OctetsFrom&lt;Source&gt;,</div></h3></section></summary><div class="impl-items"><section id="associatedtype.Error-2" class="associatedtype trait-impl"><a href="#associatedtype.Error-2" class="anchor">§</a><h4 class="code-header">type <a class="associatedtype">Error</a> = &lt;Target as OctetsFrom&lt;Source&gt;&gt;::Error</h4></section><details class="toggle method-toggle" open><summary><section id="method.try_octets_into" class="method trait-impl"><a href="#method.try_octets_into" class="anchor">§</a><h4 class="code-header">fn <a class="fn">try_octets_into</a>(
self,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Target, &lt;Source as OctetsInto&lt;Target&gt;&gt;::Error&gt;</h4></section></summary><div class='docblock'>Performs the conversion.</div></details><details class="toggle method-toggle" open><summary><section id="method.octets_into" class="method trait-impl"><a href="#method.octets_into" class="anchor">§</a><h4 class="code-header">fn <a class="fn">octets_into</a>(self) -&gt; Target<div class="where">where
Self::Error: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;<a class="enum" href="https://doc.rust-lang.org/nightly/core/convert/enum.Infallible.html" title="enum core::convert::Infallible">Infallible</a>&gt;,</div></h4></section></summary><div class='docblock'>Performs an infallible conversion.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Pipe-for-T" class="impl"><a href="#impl-Pipe-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; Pipe for T<div class="where">where
T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/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.pipe" class="method trait-impl"><a href="#method.pipe" class="anchor">§</a><h4 class="code-header">fn <a class="fn">pipe</a>&lt;R&gt;(self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(Self) -&gt; R) -&gt; R<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Pipes by value. This is generally the method you want to use. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.pipe_ref" class="method trait-impl"><a href="#method.pipe_ref" class="anchor">§</a><h4 class="code-header">fn <a class="fn">pipe_ref</a>&lt;'a, R&gt;(&amp;'a self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(&amp;'a Self) -&gt; R) -&gt; R<div class="where">where
R: 'a,</div></h4></section></summary><div class='docblock'>Borrows <code>self</code> and passes that borrow into the pipe function. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.pipe_ref_mut" class="method trait-impl"><a href="#method.pipe_ref_mut" class="anchor">§</a><h4 class="code-header">fn <a class="fn">pipe_ref_mut</a>&lt;'a, R&gt;(&amp;'a mut self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(&amp;'a mut Self) -&gt; R) -&gt; R<div class="where">where
R: 'a,</div></h4></section></summary><div class='docblock'>Mutably borrows <code>self</code> and passes that borrow into the pipe function. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.pipe_borrow" class="method trait-impl"><a href="#method.pipe_borrow" class="anchor">§</a><h4 class="code-header">fn <a class="fn">pipe_borrow</a>&lt;'a, B, R&gt;(&amp;'a self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;'a B</a>) -&gt; R) -&gt; R<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a>&lt;B&gt;,
B: 'a + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
R: 'a,</div></h4></section></summary><div class='docblock'>Borrows <code>self</code>, then passes <code>self.borrow()</code> into the pipe function. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.pipe_borrow_mut" class="method trait-impl"><a href="#method.pipe_borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a class="fn">pipe_borrow_mut</a>&lt;'a, B, R&gt;(
&amp;'a mut self,
func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;'a mut B</a>) -&gt; R,
) -&gt; R<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a>&lt;B&gt;,
B: 'a + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
R: 'a,</div></h4></section></summary><div class='docblock'>Mutably borrows <code>self</code>, then passes <code>self.borrow_mut()</code> into the pipe
function. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.pipe_as_ref" class="method trait-impl"><a href="#method.pipe_as_ref" class="anchor">§</a><h4 class="code-header">fn <a class="fn">pipe_as_ref</a>&lt;'a, U, R&gt;(&amp;'a self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;'a U</a>) -&gt; R) -&gt; R<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;U&gt;,
U: 'a + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
R: 'a,</div></h4></section></summary><div class='docblock'>Borrows <code>self</code>, then passes <code>self.as_ref()</code> into the pipe function.</div></details><details class="toggle method-toggle" open><summary><section id="method.pipe_as_mut" class="method trait-impl"><a href="#method.pipe_as_mut" class="anchor">§</a><h4 class="code-header">fn <a class="fn">pipe_as_mut</a>&lt;'a, U, R&gt;(&amp;'a mut self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;'a mut U</a>) -&gt; R) -&gt; R<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsMut.html" title="trait core::convert::AsMut">AsMut</a>&lt;U&gt;,
U: 'a + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
R: 'a,</div></h4></section></summary><div class='docblock'>Mutably borrows <code>self</code>, then passes <code>self.as_mut()</code> into the pipe
function.</div></details><details class="toggle method-toggle" open><summary><section id="method.pipe_deref" class="method trait-impl"><a href="#method.pipe_deref" class="anchor">§</a><h4 class="code-header">fn <a class="fn">pipe_deref</a>&lt;'a, T, R&gt;(&amp;'a self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;'a T</a>) -&gt; R) -&gt; R<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/deref/trait.Deref.html" title="trait core::ops::deref::Deref">Deref</a>&lt;Target = T&gt;,
T: 'a + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
R: 'a,</div></h4></section></summary><div class='docblock'>Borrows <code>self</code>, then passes <code>self.deref()</code> into the pipe function.</div></details><details class="toggle method-toggle" open><summary><section id="method.pipe_deref_mut" class="method trait-impl"><a href="#method.pipe_deref_mut" class="anchor">§</a><h4 class="code-header">fn <a class="fn">pipe_deref_mut</a>&lt;'a, T, R&gt;(
&amp;'a mut self,
func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;'a mut T</a>) -&gt; R,
) -&gt; R<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/deref/trait.DerefMut.html" title="trait core::ops::deref::DerefMut">DerefMut</a>&lt;Target = T&gt; + <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/deref/trait.Deref.html" title="trait core::ops::deref::Deref">Deref</a>,
T: 'a + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
R: 'a,</div></h4></section></summary><div class='docblock'>Mutably borrows <code>self</code>, then passes <code>self.deref_mut()</code> into the pipe
function.</div></details></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&lt;T&gt; 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/nightly/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: &lt;T as Pointable&gt;::Init) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/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>&lt;'a&gt;(ptr: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;'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>&lt;'a&gt;(ptr: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;'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/nightly/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-PolicyExt-for-T" class="impl"><a href="#impl-PolicyExt-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; PolicyExt for T<div class="where">where
T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/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.and" class="method trait-impl"><a href="#method.and" class="anchor">§</a><h4 class="code-header">fn <a class="fn">and</a>&lt;P, B, E&gt;(self, other: P) -&gt; And&lt;T, P&gt;<div class="where">where
T: Policy&lt;B, E&gt;,
P: Policy&lt;B, E&gt;,</div></h4></section></summary><div class='docblock'>Create a new <code>Policy</code> that returns [<code>Action::Follow</code>] only if <code>self</code> and <code>other</code> return
<code>Action::Follow</code>. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.or" class="method trait-impl"><a href="#method.or" class="anchor">§</a><h4 class="code-header">fn <a class="fn">or</a>&lt;P, B, E&gt;(self, other: P) -&gt; Or&lt;T, P&gt;<div class="where">where
T: Policy&lt;B, E&gt;,
P: Policy&lt;B, E&gt;,</div></h4></section></summary><div class='docblock'>Create a new <code>Policy</code> that returns [<code>Action::Follow</code>] if either <code>self</code> or <code>other</code> returns
<code>Action::Follow</code>. <a>Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Same-for-T" class="impl"><a class="src rightside" href="https://docs.rs/typenum/1.18.0/src/typenum/type_operators.rs.html#34">Source</a><a href="#impl-Same-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://docs.rs/typenum/1.18.0/typenum/type_operators/trait.Same.html" title="trait typenum::type_operators::Same">Same</a> for T</h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Output" class="associatedtype trait-impl"><a class="src rightside" href="https://docs.rs/typenum/1.18.0/src/typenum/type_operators.rs.html#35">Source</a><a href="#associatedtype.Output" class="anchor">§</a><h4 class="code-header">type <a href="https://docs.rs/typenum/1.18.0/typenum/type_operators/trait.Same.html#associatedtype.Output" class="associatedtype">Output</a> = T</h4></section></summary><div class='docblock'>Should always be <code>Self</code></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Sculptor%3CHNil,+HNil%3E-for-Source" class="impl"><a href="#impl-Sculptor%3CHNil,+HNil%3E-for-Source" class="anchor">§</a><h3 class="code-header">impl&lt;Source&gt; Sculptor&lt;HNil, HNil&gt; for Source</h3></section></summary><div class="impl-items"><section id="associatedtype.Remainder-1" class="associatedtype trait-impl"><a href="#associatedtype.Remainder-1" class="anchor">§</a><h4 class="code-header">type <a class="associatedtype">Remainder</a> = Source</h4></section><details class="toggle method-toggle" open><summary><section id="method.sculpt" class="method trait-impl"><a href="#method.sculpt" class="anchor">§</a><h4 class="code-header">fn <a class="fn">sculpt</a>(self) -&gt; (HNil, &lt;Source as Sculptor&lt;HNil, HNil&gt;&gt;::Remainder)</h4></section></summary><div class='docblock'>Consumes the current HList and returns an HList with the requested shape. <a>Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-ServiceExt-for-T" class="impl"><a href="#impl-ServiceExt-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; ServiceExt for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.propagate_header" class="method trait-impl"><a href="#method.propagate_header" class="anchor">§</a><h4 class="code-header">fn <a class="fn">propagate_header</a>(self, header: HeaderName) -&gt; PropagateHeader&lt;Self&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Propagate a header from the request to the response. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.add_extension" class="method trait-impl"><a href="#method.add_extension" class="anchor">§</a><h4 class="code-header">fn <a class="fn">add_extension</a>&lt;T&gt;(self, value: T) -&gt; AddExtension&lt;Self, T&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Add some shareable value to <a href="https://docs.rs/http/latest/http/struct.Extensions.html">request extensions</a>. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map_request_body" class="method trait-impl"><a href="#method.map_request_body" class="anchor">§</a><h4 class="code-header">fn <a class="fn">map_request_body</a>&lt;F&gt;(self, f: F) -&gt; MapRequestBody&lt;Self, F&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Apply a transformation to the request body. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map_response_body" class="method trait-impl"><a href="#method.map_response_body" class="anchor">§</a><h4 class="code-header">fn <a class="fn">map_response_body</a>&lt;F&gt;(self, f: F) -&gt; MapResponseBody&lt;Self, F&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Apply a transformation to the response body. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.compression" class="method trait-impl"><a href="#method.compression" class="anchor">§</a><h4 class="code-header">fn <a class="fn">compression</a>(self) -&gt; Compression&lt;Self&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Compresses response bodies. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.decompression" class="method trait-impl"><a href="#method.decompression" class="anchor">§</a><h4 class="code-header">fn <a class="fn">decompression</a>(self) -&gt; Decompression&lt;Self&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Decompress response bodies. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.trace_for_http" class="method trait-impl"><a href="#method.trace_for_http" class="anchor">§</a><h4 class="code-header">fn <a class="fn">trace_for_http</a>(self) -&gt; Trace&lt;Self, SharedClassifier&lt;ServerErrorsAsFailures&gt;&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>High level tracing that classifies responses using HTTP status codes. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.trace_for_grpc" class="method trait-impl"><a href="#method.trace_for_grpc" class="anchor">§</a><h4 class="code-header">fn <a class="fn">trace_for_grpc</a>(self) -&gt; Trace&lt;Self, SharedClassifier&lt;GrpcErrorsAsFailures&gt;&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>High level tracing that classifies responses using gRPC headers. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.follow_redirects" class="method trait-impl"><a href="#method.follow_redirects" class="anchor">§</a><h4 class="code-header">fn <a class="fn">follow_redirects</a>(self) -&gt; FollowRedirect&lt;Self&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Follow redirect resposes using the <a href="crate::follow_redirect::policy::Standard"><code>Standard</code></a> policy. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.sensitive_headers" class="method trait-impl"><a href="#method.sensitive_headers" class="anchor">§</a><h4 class="code-header">fn <a class="fn">sensitive_headers</a>(
self,
headers: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&lt;Item = HeaderName&gt;,
) -&gt; SetSensitiveRequestHeaders&lt;SetSensitiveResponseHeaders&lt;Self&gt;&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Mark headers as <a href="https://docs.rs/http/latest/http/header/struct.HeaderValue.html#method.set_sensitive">sensitive</a> on both requests and responses. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.sensitive_request_headers" class="method trait-impl"><a href="#method.sensitive_request_headers" class="anchor">§</a><h4 class="code-header">fn <a class="fn">sensitive_request_headers</a>(
self,
headers: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&lt;Item = HeaderName&gt;,
) -&gt; SetSensitiveRequestHeaders&lt;Self&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Mark headers as <a href="https://docs.rs/http/latest/http/header/struct.HeaderValue.html#method.set_sensitive">sensitive</a> on requests. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.sensitive_response_headers" class="method trait-impl"><a href="#method.sensitive_response_headers" class="anchor">§</a><h4 class="code-header">fn <a class="fn">sensitive_response_headers</a>(
self,
headers: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>&lt;Item = HeaderName&gt;,
) -&gt; SetSensitiveResponseHeaders&lt;Self&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Mark headers as <a href="https://docs.rs/http/latest/http/header/struct.HeaderValue.html#method.set_sensitive">sensitive</a> on responses. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.override_request_header" class="method trait-impl"><a href="#method.override_request_header" class="anchor">§</a><h4 class="code-header">fn <a class="fn">override_request_header</a>&lt;M&gt;(
self,
header_name: HeaderName,
make: M,
) -&gt; SetRequestHeader&lt;Self, M&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Insert a header into the request. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.append_request_header" class="method trait-impl"><a href="#method.append_request_header" class="anchor">§</a><h4 class="code-header">fn <a class="fn">append_request_header</a>&lt;M&gt;(
self,
header_name: HeaderName,
make: M,
) -&gt; SetRequestHeader&lt;Self, M&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Append a header into the request. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.insert_request_header_if_not_present" class="method trait-impl"><a href="#method.insert_request_header_if_not_present" class="anchor">§</a><h4 class="code-header">fn <a class="fn">insert_request_header_if_not_present</a>&lt;M&gt;(
self,
header_name: HeaderName,
make: M,
) -&gt; SetRequestHeader&lt;Self, M&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Insert a header into the request, if the header is not already present. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.override_response_header" class="method trait-impl"><a href="#method.override_response_header" class="anchor">§</a><h4 class="code-header">fn <a class="fn">override_response_header</a>&lt;M&gt;(
self,
header_name: HeaderName,
make: M,
) -&gt; SetResponseHeader&lt;Self, M&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Insert a header into the response. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.append_response_header" class="method trait-impl"><a href="#method.append_response_header" class="anchor">§</a><h4 class="code-header">fn <a class="fn">append_response_header</a>&lt;M&gt;(
self,
header_name: HeaderName,
make: M,
) -&gt; SetResponseHeader&lt;Self, M&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Append a header into the response. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.insert_response_header_if_not_present" class="method trait-impl"><a href="#method.insert_response_header_if_not_present" class="anchor">§</a><h4 class="code-header">fn <a class="fn">insert_response_header_if_not_present</a>&lt;M&gt;(
self,
header_name: HeaderName,
make: M,
) -&gt; SetResponseHeader&lt;Self, M&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Insert a header into the response, if the header is not already present. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.set_request_id" class="method trait-impl"><a href="#method.set_request_id" class="anchor">§</a><h4 class="code-header">fn <a class="fn">set_request_id</a>&lt;M&gt;(
self,
header_name: HeaderName,
make_request_id: M,
) -&gt; SetRequestId&lt;Self, M&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
M: MakeRequestId,</div></h4></section></summary><div class='docblock'>Add request id header and extension. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.set_x_request_id" class="method trait-impl"><a href="#method.set_x_request_id" class="anchor">§</a><h4 class="code-header">fn <a class="fn">set_x_request_id</a>&lt;M&gt;(self, make_request_id: M) -&gt; SetRequestId&lt;Self, M&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
M: MakeRequestId,</div></h4></section></summary><div class='docblock'>Add request id header and extension, using <code>x-request-id</code> as the header name. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.propagate_request_id" class="method trait-impl"><a href="#method.propagate_request_id" class="anchor">§</a><h4 class="code-header">fn <a class="fn">propagate_request_id</a>(
self,
header_name: HeaderName,
) -&gt; PropagateRequestId&lt;Self&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Propgate request ids from requests to responses. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.propagate_x_request_id" class="method trait-impl"><a href="#method.propagate_x_request_id" class="anchor">§</a><h4 class="code-header">fn <a class="fn">propagate_x_request_id</a>(self) -&gt; PropagateRequestId&lt;Self&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Propgate request ids from requests to responses, using <code>x-request-id</code> as the header name. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.catch_panic" class="method trait-impl"><a href="#method.catch_panic" class="anchor">§</a><h4 class="code-header">fn <a class="fn">catch_panic</a>(self) -&gt; CatchPanic&lt;Self, DefaultResponseForPanic&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Catch panics and convert them into <code>500 Internal Server</code> responses. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.request_body_limit" class="method trait-impl"><a href="#method.request_body_limit" class="anchor">§</a><h4 class="code-header">fn <a class="fn">request_body_limit</a>(self, limit: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; RequestBodyLimit&lt;Self&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Intercept requests with over-sized payloads and convert them into
<code>413 Payload Too Large</code> responses. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.trim_trailing_slash" class="method trait-impl"><a href="#method.trim_trailing_slash" class="anchor">§</a><h4 class="code-header">fn <a class="fn">trim_trailing_slash</a>(self) -&gt; NormalizePath&lt;Self&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Remove trailing slashes from paths. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.append_trailing_slash" class="method trait-impl"><a href="#method.append_trailing_slash" class="anchor">§</a><h4 class="code-header">fn <a class="fn">append_trailing_slash</a>(self) -&gt; NormalizePath&lt;Self&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Append trailing slash to paths. <a>Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-SupersetOf%3CSS%3E-for-SP" class="impl"><a href="#impl-SupersetOf%3CSS%3E-for-SP" class="anchor">§</a><h3 class="code-header">impl&lt;SS, SP&gt; SupersetOf&lt;SS&gt; for SP<div class="where">where
SS: SubsetOf&lt;SP&gt;,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.to_subset" class="method trait-impl"><a href="#method.to_subset" class="anchor">§</a><h4 class="code-header">fn <a class="fn">to_subset</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;SS&gt;</h4></section></summary><div class='docblock'>The inverse inclusion map: attempts to construct <code>self</code> from the equivalent element of its
superset. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.is_in_subset" class="method trait-impl"><a href="#method.is_in_subset" class="anchor">§</a><h4 class="code-header">fn <a class="fn">is_in_subset</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>Checks if <code>self</code> is actually part of its subset <code>T</code> (and can be converted to it).</div></details><details class="toggle method-toggle" open><summary><section id="method.to_subset_unchecked" class="method trait-impl"><a href="#method.to_subset_unchecked" class="anchor">§</a><h4 class="code-header">fn <a class="fn">to_subset_unchecked</a>(&amp;self) -&gt; SS</h4></section></summary><div class='docblock'>Use with care! Same as <code>self.to_subset</code> but without any property checks. Always succeeds.</div></details><details class="toggle method-toggle" open><summary><section id="method.from_subset" class="method trait-impl"><a href="#method.from_subset" class="anchor">§</a><h4 class="code-header">fn <a class="fn">from_subset</a>(element: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;SS</a>) -&gt; SP</h4></section></summary><div class='docblock'>The inclusion map: converts <code>self</code> to the equivalent element of its superset.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Tap-for-T" class="impl"><a href="#impl-Tap-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; Tap for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.tap" class="method trait-impl"><a href="#method.tap" class="anchor">§</a><h4 class="code-header">fn <a class="fn">tap</a>(self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(&amp;Self)) -&gt; Self</h4></section></summary><div class='docblock'>Immutable access to a value. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.tap_mut" class="method trait-impl"><a href="#method.tap_mut" class="anchor">§</a><h4 class="code-header">fn <a class="fn">tap_mut</a>(self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(&amp;mut Self)) -&gt; Self</h4></section></summary><div class='docblock'>Mutable access to a value. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.tap_borrow" class="method trait-impl"><a href="#method.tap_borrow" class="anchor">§</a><h4 class="code-header">fn <a class="fn">tap_borrow</a>&lt;B&gt;(self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;B</a>)) -&gt; Self<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a>&lt;B&gt;,
B: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Immutable access to the <code>Borrow&lt;B&gt;</code> of a value. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.tap_borrow_mut" class="method trait-impl"><a href="#method.tap_borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a class="fn">tap_borrow_mut</a>&lt;B&gt;(self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;mut B</a>)) -&gt; Self<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a>&lt;B&gt;,
B: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Mutable access to the <code>BorrowMut&lt;B&gt;</code> of a value. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.tap_ref" class="method trait-impl"><a href="#method.tap_ref" class="anchor">§</a><h4 class="code-header">fn <a class="fn">tap_ref</a>&lt;R&gt;(self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;R</a>)) -&gt; Self<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;R&gt;,
R: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Immutable access to the <code>AsRef&lt;R&gt;</code> view of a value. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.tap_ref_mut" class="method trait-impl"><a href="#method.tap_ref_mut" class="anchor">§</a><h4 class="code-header">fn <a class="fn">tap_ref_mut</a>&lt;R&gt;(self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;mut R</a>)) -&gt; Self<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsMut.html" title="trait core::convert::AsMut">AsMut</a>&lt;R&gt;,
R: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Mutable access to the <code>AsMut&lt;R&gt;</code> view of a value. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.tap_deref" class="method trait-impl"><a href="#method.tap_deref" class="anchor">§</a><h4 class="code-header">fn <a class="fn">tap_deref</a>&lt;T&gt;(self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;T</a>)) -&gt; Self<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/deref/trait.Deref.html" title="trait core::ops::deref::Deref">Deref</a>&lt;Target = T&gt;,
T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Immutable access to the <code>Deref::Target</code> of a value. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.tap_deref_mut" class="method trait-impl"><a href="#method.tap_deref_mut" class="anchor">§</a><h4 class="code-header">fn <a class="fn">tap_deref_mut</a>&lt;T&gt;(self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;mut T</a>)) -&gt; Self<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/deref/trait.DerefMut.html" title="trait core::ops::deref::DerefMut">DerefMut</a>&lt;Target = T&gt; + <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/deref/trait.Deref.html" title="trait core::ops::deref::Deref">Deref</a>,
T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Mutable access to the <code>Deref::Target</code> of a value. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.tap_dbg" class="method trait-impl"><a href="#method.tap_dbg" class="anchor">§</a><h4 class="code-header">fn <a class="fn">tap_dbg</a>(self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(&amp;Self)) -&gt; Self</h4></section></summary><div class='docblock'>Calls <code>.tap()</code> only in debug builds, and is erased in release builds.</div></details><details class="toggle method-toggle" open><summary><section id="method.tap_mut_dbg" class="method trait-impl"><a href="#method.tap_mut_dbg" class="anchor">§</a><h4 class="code-header">fn <a class="fn">tap_mut_dbg</a>(self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(&amp;mut Self)) -&gt; Self</h4></section></summary><div class='docblock'>Calls <code>.tap_mut()</code> only in debug builds, and is erased in release
builds.</div></details><details class="toggle method-toggle" open><summary><section id="method.tap_borrow_dbg" class="method trait-impl"><a href="#method.tap_borrow_dbg" class="anchor">§</a><h4 class="code-header">fn <a class="fn">tap_borrow_dbg</a>&lt;B&gt;(self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;B</a>)) -&gt; Self<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a>&lt;B&gt;,
B: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Calls <code>.tap_borrow()</code> only in debug builds, and is erased in release
builds.</div></details><details class="toggle method-toggle" open><summary><section id="method.tap_borrow_mut_dbg" class="method trait-impl"><a href="#method.tap_borrow_mut_dbg" class="anchor">§</a><h4 class="code-header">fn <a class="fn">tap_borrow_mut_dbg</a>&lt;B&gt;(self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;mut B</a>)) -&gt; Self<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a>&lt;B&gt;,
B: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Calls <code>.tap_borrow_mut()</code> only in debug builds, and is erased in release
builds.</div></details><details class="toggle method-toggle" open><summary><section id="method.tap_ref_dbg" class="method trait-impl"><a href="#method.tap_ref_dbg" class="anchor">§</a><h4 class="code-header">fn <a class="fn">tap_ref_dbg</a>&lt;R&gt;(self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;R</a>)) -&gt; Self<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;R&gt;,
R: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Calls <code>.tap_ref()</code> only in debug builds, and is erased in release
builds.</div></details><details class="toggle method-toggle" open><summary><section id="method.tap_ref_mut_dbg" class="method trait-impl"><a href="#method.tap_ref_mut_dbg" class="anchor">§</a><h4 class="code-header">fn <a class="fn">tap_ref_mut_dbg</a>&lt;R&gt;(self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;mut R</a>)) -&gt; Self<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsMut.html" title="trait core::convert::AsMut">AsMut</a>&lt;R&gt;,
R: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Calls <code>.tap_ref_mut()</code> only in debug builds, and is erased in release
builds.</div></details><details class="toggle method-toggle" open><summary><section id="method.tap_deref_dbg" class="method trait-impl"><a href="#method.tap_deref_dbg" class="anchor">§</a><h4 class="code-header">fn <a class="fn">tap_deref_dbg</a>&lt;T&gt;(self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;T</a>)) -&gt; Self<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/deref/trait.Deref.html" title="trait core::ops::deref::Deref">Deref</a>&lt;Target = T&gt;,
T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Calls <code>.tap_deref()</code> only in debug builds, and is erased in release
builds.</div></details><details class="toggle method-toggle" open><summary><section id="method.tap_deref_mut_dbg" class="method trait-impl"><a href="#method.tap_deref_mut_dbg" class="anchor">§</a><h4 class="code-header">fn <a class="fn">tap_deref_mut_dbg</a>&lt;T&gt;(self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;mut T</a>)) -&gt; Self<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/deref/trait.DerefMut.html" title="trait core::ops::deref::DerefMut">DerefMut</a>&lt;Target = T&gt; + <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/deref/trait.Deref.html" title="trait core::ops::deref::Deref">Deref</a>,
T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Calls <code>.tap_deref_mut()</code> only in debug builds, and is erased in release
builds.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryConv-for-T" class="impl"><a href="#impl-TryConv-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; TryConv for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.try_conv" class="method trait-impl"><a href="#method.try_conv" class="anchor">§</a><h4 class="code-header">fn <a class="fn">try_conv</a>&lt;T&gt;(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;T, Self::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html#associatedtype.Error" title="type core::convert::TryInto::Error">Error</a>&gt;<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a>&lt;T&gt;,</div></h4></section></summary><div class='docblock'>Attempts to convert <code>self</code> into <code>T</code> using <code>TryInto&lt;T&gt;</code>. <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/nightly/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&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;U&gt; for T<div class="where">where
U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;T&gt;,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error-1" class="associatedtype trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/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/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = <a class="enum" href="https://doc.rust-lang.org/nightly/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/nightly/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/nightly/core/convert/trait.TryFrom.html#tymethod.try_from" class="fn">try_from</a>(value: U) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;T, &lt;T as <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;U&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>&gt;</h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryInto%3CU%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/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&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a>&lt;U&gt; for T<div class="where">where
U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/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/nightly/core/convert/trait.TryInto.html#associatedtype.Error" class="associatedtype">Error</a> = &lt;U as <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/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/nightly/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/nightly/core/convert/trait.TryInto.html#tymethod.try_into" class="fn">try_into</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;U, &lt;U as <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>&gt;</h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-VZip%3CV%3E-for-T" class="impl"><a href="#impl-VZip%3CV%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;V, T&gt; VZip&lt;V&gt; for T<div class="where">where
V: MultiLane&lt;T&gt;,</div></h3></section></summary><div class="impl-items"><section id="method.vzip" class="method trait-impl"><a href="#method.vzip" class="anchor">§</a><h4 class="code-header">fn <a class="fn">vzip</a>(self) -&gt; V</h4></section></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&lt;T&gt; 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>&lt;S&gt;(self, subscriber: S) -&gt; WithDispatch&lt;Self&gt;<div class="where">where
S: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;Dispatch&gt;,</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) -&gt; WithDispatch&lt;Self&gt;</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><details class="toggle implementors-toggle"><summary><section id="impl-Within%3CG2%3E-for-G1" class="impl"><a href="#impl-Within%3CG2%3E-for-G1" class="anchor">§</a><h3 class="code-header">impl&lt;G1, G2&gt; Within&lt;G2&gt; for G1<div class="where">where
G2: Contains&lt;G1&gt;,</div></h3></section></summary><div class="impl-items"><section id="method.is_within" class="method trait-impl"><a href="#method.is_within" class="anchor">§</a><h4 class="code-header">fn <a class="fn">is_within</a>(&amp;self, b: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;G2</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></div></details><section id="impl-Any-for-T-1" class="impl"><a href="#impl-Any-for-T-1" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; Any for T<div class="where">where
T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::any::Any">Any</a>,</div></h3></section><section id="impl-ErasedDestructor-for-T" class="impl"><a href="#impl-ErasedDestructor-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; ErasedDestructor for T<div class="where">where
T: 'static,</div></h3></section><section id="impl-MaybeSend-for-T" class="impl"><a href="#impl-MaybeSend-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; MaybeSend for T<div class="where">where
T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h3></section></div></section></div></main></body></html>