Files
greptimedb/frontend/instance/struct.Instance.html

1047 lines
349 KiB
HTML
Raw Permalink 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="The frontend instance contains necessary components, and implements many traits, like `servers::query_handler::grpc::GrpcQueryHandler`, `servers::query_handler::sql::SqlQueryHandler`, etc."><title>Instance in frontend::instance - 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-1ed95124.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="frontend" data-themes="" data-resource-suffix="" data-rustdoc-version="1.98.1 (48a229cea 2026-09-01)" data-channel="1.98.1" data-search-js="search-9944d736.js" data-stringdex-js="stringdex-2da4960a.js" data-settings-js="settings-170eb4bf.js" ><script src="../../static.files/storage-41dd4d93.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-417ebf0a.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-f7c3ffd8.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"><a class="skip-main-content" href="#main-content">Skip to main content</a><!--[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="#">Instance</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../frontend/index.html">frontend</a><span class="version">1.4.0-alpha.0</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Instance</a></h2><h3><a href="#fields">Fields</a></h3><ul class="block structfield"><li><a href="#structfield.catalog_manager" title="catalog_manager">catalog_manager</a></li><li><a href="#structfield.deleter" title="deleter">deleter</a></li><li><a href="#structfield.event_recorder" title="event_recorder">event_recorder</a></li><li><a href="#structfield.frontend_peer_addr" title="frontend_peer_addr">frontend_peer_addr</a></li><li><a href="#structfield.influxdb_default_merge_mode" title="influxdb_default_merge_mode">influxdb_default_merge_mode</a></li><li><a href="#structfield.inserter" title="inserter">inserter</a></li><li><a href="#structfield.logical_batcher" title="logical_batcher">logical_batcher</a></li><li><a href="#structfield.otlp_metrics_table_legacy_cache" title="otlp_metrics_table_legacy_cache">otlp_metrics_table_legacy_cache</a></li><li><a href="#structfield.otlp_resource_info" title="otlp_resource_info">otlp_resource_info</a></li><li><a href="#structfield.pipeline_operator" title="pipeline_operator">pipeline_operator</a></li><li><a href="#structfield.plugins" title="plugins">plugins</a></li><li><a href="#structfield.process_manager" title="process_manager">process_manager</a></li><li><a href="#structfield.query_engine" title="query_engine">query_engine</a></li><li><a href="#structfield.slow_query_options" title="slow_query_options">slow_query_options</a></li><li><a href="#structfield.slow_query_recorder" title="slow_query_recorder">slow_query_recorder</a></li><li><a href="#structfield.statement_executor" title="statement_executor">statement_executor</a></li><li><a href="#structfield.suspend" title="suspend">suspend</a></li><li><a href="#structfield.table_metadata_manager" title="table_metadata_manager">table_metadata_manager</a></li><li><a href="#structfield.trace_aux_cache" title="trace_aux_cache">trace_aux_cache</a></li><li><a href="#structfield.trace_aux_limiter" title="trace_aux_limiter">trace_aux_limiter</a></li><li><a href="#structfield.trace_ingest_chunk_size" title="trace_ingest_chunk_size">trace_ingest_chunk_size</a></li></ul><h3><a href="#implementations">Associated Functions</a></h3><ul class="block method"><li><a href="#method.build_dashboard_schema" title="build_dashboard_schema">build_dashboard_schema</a></li><li><a href="#method.build_dashboard_insert_column_schemas" title="build_dashboard_insert_column_schemas">build_dashboard_insert_column_schemas</a></li><li><a href="#method.dashboard_query_ctx" title="dashboard_query_ctx">dashboard_query_ctx</a></li><li><a href="#method.prevalidate_trace_v1_fixed_columns" title="prevalidate_trace_v1_fixed_columns">prevalidate_trace_v1_fixed_columns</a></li><li><a href="#method.prevalidate_trace_v1_chunk_rewrites" title="prevalidate_trace_v1_chunk_rewrites">prevalidate_trace_v1_chunk_rewrites</a></li><li><a href="#method.prepare_trace_v1_chunk_rewrite" title="prepare_trace_v1_chunk_rewrite">prepare_trace_v1_chunk_rewrite</a></li><li><a href="#method.exclude_trace_v1_schema_observations" title="exclude_trace_v1_schema_observations">exclude_trace_v1_schema_observations</a></li><li><a href="#method.classify_trace_prewrite_failure" title="classify_trace_prewrite_failure">classify_trace_prewrite_failure</a></li><li><a href="#method.add_trace_write_cost" title="add_trace_write_cost">add_trace_write_cost</a></li><li><a href="#method.trace_failure_cause" title="trace_failure_cause">trace_failure_cause</a></li><li><a href="#method.push_trace_failure_message" title="push_trace_failure_message">push_trace_failure_message</a></li><li><a href="#method.finish_trace_failure_message" title="finish_trace_failure_message">finish_trace_failure_message</a></li></ul><h3><a href="#implementations">Methods</a></h3><ul class="block method"><li><a href="#method.alter_trace_table_columns_to_float64" title="alter_trace_table_columns_to_float64">alter_trace_table_columns_to_float64</a></li><li><a href="#method.apply_trace_v1_pre_alter" title="apply_trace_v1_pre_alter">apply_trace_v1_pre_alter</a></li><li><a href="#method.batch_create_logical_tables" title="batch_create_logical_tables">batch_create_logical_tables</a></li><li><a href="#method.cache_invalidator" title="cache_invalidator">cache_invalidator</a></li><li><a href="#method.cache_otlp_legacy" title="cache_otlp_legacy">cache_otlp_legacy</a></li><li><a href="#method.catalog_manager" title="catalog_manager">catalog_manager</a></li><li><a href="#method.check_jaeger_query_permission" title="check_jaeger_query_permission">check_jaeger_query_permission</a></li><li><a href="#method.check_otlp_legacy" title="check_otlp_legacy">check_otlp_legacy</a></li><li><a href="#method.check_permission" title="check_permission">check_permission</a></li><li><a href="#method.check_prom_query_privilege" title="check_prom_query_privilege">check_prom_query_privilege</a></li><li><a href="#method.check_row_insert_permission" title="check_row_insert_permission">check_row_insert_permission</a></li><li><a href="#method.check_sql_permission" title="check_sql_permission">check_sql_permission</a></li><li><a href="#method.check_table_permission" title="check_table_permission">check_table_permission</a></li><li><a href="#method.copy_metric_database" title="copy_metric_database">copy_metric_database</a></li><li><a href="#method.copy_packed_database" title="copy_packed_database">copy_packed_database</a></li><li><a href="#method.create_dashboard_table_if_not_exists" title="create_dashboard_table_if_not_exists">create_dashboard_table_if_not_exists</a></li><li><a href="#method.create_metric_physical_table_if_missing" title="create_metric_physical_table_if_missing">create_metric_physical_table_if_missing</a></li><li><a href="#method.delete_dashboard" title="delete_dashboard">delete_dashboard</a></li><li><a href="#method.do_analyze_stream_query_inner" title="do_analyze_stream_query_inner">do_analyze_stream_query_inner</a></li><li><a href="#method.do_describe_inner" title="do_describe_inner">do_describe_inner</a></li><li><a href="#method.do_exec_plan_inner" title="do_exec_plan_inner">do_exec_plan_inner</a></li><li><a href="#method.do_promql_query_inner" title="do_promql_query_inner">do_promql_query_inner</a></li><li><a href="#method.do_query_inner" title="do_query_inner">do_query_inner</a></li><li><a href="#method.event_recorder" title="event_recorder">event_recorder</a></li><li><a href="#method.exec_plan" title="exec_plan">exec_plan</a></li><li><a href="#method.exec_plan_with_timeout" title="exec_plan_with_timeout">exec_plan_with_timeout</a></li><li><a href="#method.exec_statement" title="exec_statement">exec_statement</a></li><li><a href="#method.exec_statement_with_timeout" title="exec_statement_with_timeout">exec_statement_with_timeout</a></li><li><a href="#method.execute_opentsdb_write" title="execute_opentsdb_write">execute_opentsdb_write</a></li><li><a href="#method.execute_prom_store_write" title="execute_prom_store_write">execute_prom_store_write</a></li><li><a href="#method.export_database" title="export_database">export_database</a></li><li><a href="#method.frontend_peer_addr" title="frontend_peer_addr">frontend_peer_addr</a></li><li><a href="#method.handle_deletes" title="handle_deletes">handle_deletes</a></li><li><a href="#method.handle_influx_row_inserts" title="handle_influx_row_inserts">handle_influx_row_inserts</a></li><li><a href="#method.handle_insert_plan" title="handle_insert_plan">handle_insert_plan</a></li><li><a href="#method.handle_inserts" title="handle_inserts">handle_inserts</a></li><li><a href="#method.handle_log_inserts" title="handle_log_inserts">handle_log_inserts</a></li><li><a href="#method.handle_metric_row_inserts" title="handle_metric_row_inserts">handle_metric_row_inserts</a></li><li><a href="#method.handle_otlp_metric_row_inserts" title="handle_otlp_metric_row_inserts">handle_otlp_metric_row_inserts</a></li><li><a href="#method.handle_put_record_batch_stream_inner" title="handle_put_record_batch_stream_inner">handle_put_record_batch_stream_inner</a></li><li><a href="#method.handle_query_label_values" title="handle_query_label_values">handle_query_label_values</a></li><li><a href="#method.handle_query_metric_names" title="handle_query_metric_names">handle_query_metric_names</a></li><li><a href="#method.handle_query_metric_names_by_labels" title="handle_query_metric_names_by_labels">handle_query_metric_names_by_labels</a></li><li><a href="#method.handle_remote_queries" title="handle_remote_queries">handle_remote_queries</a></li><li><a href="#method.handle_remote_query" title="handle_remote_query">handle_remote_query</a></li><li><a href="#method.handle_row_deletes" title="handle_row_deletes">handle_row_deletes</a></li><li><a href="#method.handle_row_inserts" title="handle_row_inserts">handle_row_inserts</a></li><li><a href="#method.handle_trace_inserts" title="handle_trace_inserts">handle_trace_inserts</a></li><li><a href="#method.ingest_trace_chunk" title="ingest_trace_chunk">ingest_trace_chunk</a></li><li><a href="#method.ingest_trace_spans" title="ingest_trace_spans">ingest_trace_spans</a></li><li><a href="#method.ingest_trace_v1_chunk" title="ingest_trace_v1_chunk">ingest_trace_v1_chunk</a></li><li><a href="#method.ingest_trace_v1_prepared_chunks" title="ingest_trace_v1_prepared_chunks">ingest_trace_v1_prepared_chunks</a></li><li><a href="#method.ingest_trace_v1_rows_span_by_span" title="ingest_trace_v1_rows_span_by_span">ingest_trace_v1_rows_span_by_span</a></li><li><a href="#method.init_logical_batcher" title="init_logical_batcher">init_logical_batcher</a></li><li><a href="#method.insert_dashboard" title="insert_dashboard">insert_dashboard</a></li><li><a href="#method.insert_trace_aux_requests" title="insert_trace_aux_requests">insert_trace_aux_requests</a></li><li><a href="#method.insert_trace_requests" title="insert_trace_requests">insert_trace_requests</a></li><li><a href="#method.inserter" title="inserter">inserter</a></li><li><a href="#method.is_physical_query_permission_target" title="is_physical_query_permission_target">is_physical_query_permission_target</a></li><li><a href="#method.is_suspended" title="is_suspended">is_suspended</a></li><li><a href="#method.is_valid_schema_inner" title="is_valid_schema_inner">is_valid_schema_inner</a></li><li><a href="#method.list_dashboards" title="list_dashboards">list_dashboards</a></li><li><a href="#method.logical_batcher" title="logical_batcher">logical_batcher</a></li><li><a href="#method.node_manager" title="node_manager">node_manager</a></li><li><a href="#method.partition_manager" title="partition_manager">partition_manager</a></li><li><a href="#method.physical_metric_tables" title="physical_metric_tables">physical_metric_tables</a></li><li><a href="#method.plan_and_exec_sql" title="plan_and_exec_sql">plan_and_exec_sql</a></li><li><a href="#method.plan_and_exec_tql" title="plan_and_exec_tql">plan_and_exec_tql</a></li><li><a href="#method.plan_trace_v1_request_schema" title="plan_trace_v1_request_schema">plan_trace_v1_request_schema</a></li><li><a href="#method.plugins" title="plugins">plugins</a></li><li><a href="#method.prepare_database_export" title="prepare_database_export">prepare_database_export</a></li><li><a href="#method.prepare_log_insert" title="prepare_log_insert">prepare_log_insert</a></li><li><a href="#method.prepare_prom_store_write" title="prepare_prom_store_write">prepare_prom_store_write</a></li><li><a href="#method.prepare_trace_aux_write" title="prepare_trace_aux_write">prepare_trace_aux_write</a></li><li><a href="#method.prepare_trace_v1_request_schema" title="prepare_trace_v1_request_schema">prepare_trace_v1_request_schema</a></li><li><a href="#method.procedure_executor" title="procedure_executor">procedure_executor</a></li><li><a href="#method.process_manager" title="process_manager">process_manager</a></li><li><a href="#method.prom_expr_permission_targets" title="prom_expr_permission_targets">prom_expr_permission_targets</a></li><li><a href="#method.prom_queries_permission_targets" title="prom_queries_permission_targets">prom_queries_permission_targets</a></li><li><a href="#method.query_engine" title="query_engine">query_engine</a></li><li><a href="#method.query_statement" title="query_statement">query_statement</a></li><li><a href="#method.reconcile_trace_column_types" title="reconcile_trace_column_types">reconcile_trace_column_types</a></li><li><a href="#method.resolve_query_permission_targets" title="resolve_query_permission_targets">resolve_query_permission_targets</a></li><li><a href="#method.scan_distinct_column" title="scan_distinct_column">scan_distinct_column</a></li><li><a href="#method.scan_matching_table_ids" title="scan_matching_table_ids">scan_matching_table_ids</a></li><li><a href="#method.show_statement_dataframe" title="show_statement_dataframe">show_statement_dataframe</a></li><li><a href="#method.statement_executor" title="statement_executor">statement_executor</a></li><li><a href="#method.statement_slow_query_timer" title="statement_slow_query_timer">statement_slow_query_timer</a></li><li><a href="#method.suspend_state" title="suspend_state">suspend_state</a></li><li><a href="#method.table_flownode_set_cache" title="table_flownode_set_cache">table_flownode_set_cache</a></li><li><a href="#method.table_metadata_manager" title="table_metadata_manager">table_metadata_manager</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block trait-implementation"><li><a href="#impl-Clone-for-Instance" title="Clone">Clone</a></li><li><a href="#impl-DashboardHandler-for-Instance" title="DashboardHandler">DashboardHandler</a></li><li><a href="#impl-GrpcQueryHandler-for-Instance" title="GrpcQueryHandler">GrpcQueryHandler</a></li><li><a href="#impl-InfluxdbLineProtocolHandler-for-Instance" title="InfluxdbLineProtocolHandler">InfluxdbLineProtocolHandler</a></li><li><a href="#impl-JaegerQueryHandler-for-Instance" title="JaegerQueryHandler">JaegerQueryHandler</a></li><li><a href="#impl-LogQueryHandler-for-Instance" title="LogQueryHandler">LogQueryHandler</a></li><li><a href="#impl-OpenTelemetryProtocolHandler-for-Instance" title="OpenTelemetryProtocolHandler">OpenTelemetryProtocolHandler</a></li><li><a href="#impl-OpentsdbProtocolHandler-for-Instance" title="OpentsdbProtocolHandler">OpentsdbProtocolHandler</a></li><li><a href="#impl-PendingRowsSchemaAlterer-for-Instance" title="PendingRowsSchemaAlterer">PendingRowsSchemaAlterer</a></li><li><a href="#impl-PipelineHandler-for-Instance" title="PipelineHandler">PipelineHandler</a></li><li><a href="#impl-PromStoreProtocolHandler-for-Instance" title="PromStoreProtocolHandler">PromStoreProtocolHandler</a></li><li><a href="#impl-PrometheusHandler-for-Instance" title="PrometheusHandler">PrometheusHandler</a></li><li><a href="#impl-SqlQueryHandler-for-Instance" title="SqlQueryHandler">SqlQueryHandler</a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block synthetic-implementation"><li><a href="#impl-RefUnwindSafe-for-Instance" title="!RefUnwindSafe">!RefUnwindSafe</a></li><li><a href="#impl-UnwindSafe-for-Instance" title="!UnwindSafe">!UnwindSafe</a></li><li><a href="#impl-Freeze-for-Instance" title="Freeze">Freeze</a></li><li><a href="#impl-Send-for-Instance" title="Send">Send</a></li><li><a href="#impl-Sync-for-Instance" title="Sync">Sync</a></li><li><a href="#impl-Unpin-for-Instance" title="Unpin">Unpin</a></li><li><a href="#impl-UnsafeUnpin-for-Instance" title="UnsafeUnpin">UnsafeUnpin</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-Any-for-T-2" title="Any">Any</a></li><li><a href="#impl-AnySync-for-T" title="AnySync">AnySync</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-CloneAny-for-T" title="CloneAny">CloneAny</a></li><li><a href="#impl-CloneAnySend-for-T" title="CloneAnySend">CloneAnySend</a></li><li><a href="#impl-CloneAnySendSync-for-T" title="CloneAnySendSync">CloneAnySendSync</a></li><li><a href="#impl-CloneAnySync-for-T" title="CloneAnySync">CloneAnySync</a></li><li><a href="#impl-CloneToUninit-for-T" title="CloneToUninit">CloneToUninit</a></li><li><a href="#impl-Conv-for-T" title="Conv">Conv</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-Downcast-for-T" title="Downcast">Downcast</a></li><li><a href="#impl-DowncastSend-for-T" title="DowncastSend">DowncastSend</a></li><li><a href="#impl-DowncastSync-for-T" title="DowncastSync">DowncastSync</a></li><li><a href="#impl-DynClone-for-T" title="DynClone">DynClone</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-FromRef%3CT%3E-for-T" title="FromRef&#60;T&#62;">FromRef&#60;T&#62;</a></li><li><a href="#impl-Fruit-for-T" title="Fruit">Fruit</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-MaybeSend-for-T-1" 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-ToOwned-for-T" title="ToOwned">ToOwned</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><a href="index.html">In frontend::<wbr>instance</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" tabindex="-1"><div class="main-heading"><div class="rustdoc-breadcrumbs"><a href="../index.html">frontend</a>::<wbr><a href="index.html">instance</a></div><h1>Struct <span class="struct">Instance</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/frontend/instance.rs.html#128-155">Source</a> </span></div><pre class="rust item-decl"><code>pub struct Instance {<details class="toggle type-contents-toggle"><summary class="hideme"><span>Show 21 fields</span></summary>
frontend_peer_addr: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>,
catalog_manager: <a class="type" href="../../catalog/type.CatalogManagerRef.html" title="type catalog::CatalogManagerRef">CatalogManagerRef</a>,
pipeline_operator: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;<a class="struct" href="../../pipeline/manager/pipeline_operator/struct.PipelineOperator.html" title="struct pipeline::manager::pipeline_operator::PipelineOperator">PipelineOperator</a>&gt;,
statement_executor: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;<a class="struct" href="../../operator/statement/struct.StatementExecutor.html" title="struct operator::statement::StatementExecutor">StatementExecutor</a>&gt;,
query_engine: <a class="type" href="../../query/query_engine/type.QueryEngineRef.html" title="type query::query_engine::QueryEngineRef">QueryEngineRef</a>,
plugins: Plugins,
inserter: <a class="type" href="../../operator/insert/type.InserterRef.html" title="type operator::insert::InserterRef">InserterRef</a>,
logical_batcher: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/std/sync/once_lock/struct.OnceLock.html" title="struct std::sync::once_lock::OnceLock">OnceLock</a>&lt;<a class="enum" href="https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;<a class="struct" href="../../servers/batcher/logical_table/struct.LogicalTablePendingRowsBatcher.html" title="struct servers::batcher::logical_table::LogicalTablePendingRowsBatcher">LogicalTablePendingRowsBatcher</a>&gt;&gt;&gt;&gt;,
deleter: <a class="type" href="../../operator/delete/type.DeleterRef.html" title="type operator::delete::DeleterRef">DeleterRef</a>,
table_metadata_manager: <a class="type" href="../../common_meta/key/type.TableMetadataManagerRef.html" title="type common_meta::key::TableMetadataManagerRef">TableMetadataManagerRef</a>,
event_recorder: EventRecorderRef,
slow_query_recorder: EventRecorderRef,
process_manager: <a class="type" href="../../catalog/process_manager/type.ProcessManagerRef.html" title="type catalog::process_manager::ProcessManagerRef">ProcessManagerRef</a>,
slow_query_options: SlowQueryOptions,
influxdb_default_merge_mode: <a class="enum" href="../service_config/influxdb/enum.InfluxdbMergeMode.html" title="enum frontend::service_config::influxdb::InfluxdbMergeMode">InfluxdbMergeMode</a>,
trace_ingest_chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.usize.html">usize</a>,
trace_aux_cache: <a class="struct" href="otlp/trace_ingest/struct.TraceAuxCache.html" title="struct frontend::instance::otlp::trace_ingest::TraceAuxCache">TraceAuxCache</a>,
trace_aux_limiter: <a class="enum" href="https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;RequestLimiter&gt;,
otlp_resource_info: <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.bool.html">bool</a>,
suspend: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;<a class="type" href="https://doc.rust-lang.org/1.98.1/core/sync/atomic/type.AtomicBool.html" title="type core::sync::atomic::AtomicBool">AtomicBool</a>&gt;,
otlp_metrics_table_legacy_cache: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;DashMap&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>, DashMap&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>, <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.bool.html">bool</a>&gt;&gt;&gt;,
</details>}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>The frontend instance contains necessary components, and implements many
traits, like <a href="../../servers/query_handler/grpc/trait.GrpcQueryHandler.html" title="trait servers::query_handler::grpc::GrpcQueryHandler"><code>servers::query_handler::grpc::GrpcQueryHandler</code></a>,
<a href="../../servers/query_handler/sql/trait.SqlQueryHandler.html" title="trait servers::query_handler::sql::SqlQueryHandler"><code>servers::query_handler::sql::SqlQueryHandler</code></a>, etc.</p>
</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.frontend_peer_addr" class="structfield section-header"><a href="#structfield.frontend_peer_addr" class="anchor field">§</a><code>frontend_peer_addr: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a></code></span><span id="structfield.catalog_manager" class="structfield section-header"><a href="#structfield.catalog_manager" class="anchor field">§</a><code>catalog_manager: <a class="type" href="../../catalog/type.CatalogManagerRef.html" title="type catalog::CatalogManagerRef">CatalogManagerRef</a></code></span><span id="structfield.pipeline_operator" class="structfield section-header"><a href="#structfield.pipeline_operator" class="anchor field">§</a><code>pipeline_operator: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;<a class="struct" href="../../pipeline/manager/pipeline_operator/struct.PipelineOperator.html" title="struct pipeline::manager::pipeline_operator::PipelineOperator">PipelineOperator</a>&gt;</code></span><span id="structfield.statement_executor" class="structfield section-header"><a href="#structfield.statement_executor" class="anchor field">§</a><code>statement_executor: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;<a class="struct" href="../../operator/statement/struct.StatementExecutor.html" title="struct operator::statement::StatementExecutor">StatementExecutor</a>&gt;</code></span><span id="structfield.query_engine" class="structfield section-header"><a href="#structfield.query_engine" class="anchor field">§</a><code>query_engine: <a class="type" href="../../query/query_engine/type.QueryEngineRef.html" title="type query::query_engine::QueryEngineRef">QueryEngineRef</a></code></span><span id="structfield.plugins" class="structfield section-header"><a href="#structfield.plugins" class="anchor field">§</a><code>plugins: Plugins</code></span><span id="structfield.inserter" class="structfield section-header"><a href="#structfield.inserter" class="anchor field">§</a><code>inserter: <a class="type" href="../../operator/insert/type.InserterRef.html" title="type operator::insert::InserterRef">InserterRef</a></code></span><span id="structfield.logical_batcher" class="structfield section-header"><a href="#structfield.logical_batcher" class="anchor field">§</a><code>logical_batcher: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/std/sync/once_lock/struct.OnceLock.html" title="struct std::sync::once_lock::OnceLock">OnceLock</a>&lt;<a class="enum" href="https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;<a class="struct" href="../../servers/batcher/logical_table/struct.LogicalTablePendingRowsBatcher.html" title="struct servers::batcher::logical_table::LogicalTablePendingRowsBatcher">LogicalTablePendingRowsBatcher</a>&gt;&gt;&gt;&gt;</code></span><span id="structfield.deleter" class="structfield section-header"><a href="#structfield.deleter" class="anchor field">§</a><code>deleter: <a class="type" href="../../operator/delete/type.DeleterRef.html" title="type operator::delete::DeleterRef">DeleterRef</a></code></span><span id="structfield.table_metadata_manager" class="structfield section-header"><a href="#structfield.table_metadata_manager" class="anchor field">§</a><code>table_metadata_manager: <a class="type" href="../../common_meta/key/type.TableMetadataManagerRef.html" title="type common_meta::key::TableMetadataManagerRef">TableMetadataManagerRef</a></code></span><span id="structfield.event_recorder" class="structfield section-header"><a href="#structfield.event_recorder" class="anchor field">§</a><code>event_recorder: EventRecorderRef</code></span><span id="structfield.slow_query_recorder" class="structfield section-header"><a href="#structfield.slow_query_recorder" class="anchor field">§</a><code>slow_query_recorder: EventRecorderRef</code></span><span id="structfield.process_manager" class="structfield section-header"><a href="#structfield.process_manager" class="anchor field">§</a><code>process_manager: <a class="type" href="../../catalog/process_manager/type.ProcessManagerRef.html" title="type catalog::process_manager::ProcessManagerRef">ProcessManagerRef</a></code></span><span id="structfield.slow_query_options" class="structfield section-header"><a href="#structfield.slow_query_options" class="anchor field">§</a><code>slow_query_options: SlowQueryOptions</code></span><span id="structfield.influxdb_default_merge_mode" class="structfield section-header"><a href="#structfield.influxdb_default_merge_mode" class="anchor field">§</a><code>influxdb_default_merge_mode: <a class="enum" href="../service_config/influxdb/enum.InfluxdbMergeMode.html" title="enum frontend::service_config::influxdb::InfluxdbMergeMode">InfluxdbMergeMode</a></code></span><span id="structfield.trace_ingest_chunk_size" class="structfield section-header"><a href="#structfield.trace_ingest_chunk_size" class="anchor field">§</a><code>trace_ingest_chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.usize.html">usize</a></code></span><span id="structfield.trace_aux_cache" class="structfield section-header"><a href="#structfield.trace_aux_cache" class="anchor field">§</a><code>trace_aux_cache: <a class="struct" href="otlp/trace_ingest/struct.TraceAuxCache.html" title="struct frontend::instance::otlp::trace_ingest::TraceAuxCache">TraceAuxCache</a></code></span><span id="structfield.trace_aux_limiter" class="structfield section-header"><a href="#structfield.trace_aux_limiter" class="anchor field">§</a><code>trace_aux_limiter: <a class="enum" href="https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;RequestLimiter&gt;</code></span><span id="structfield.otlp_resource_info" class="structfield section-header"><a href="#structfield.otlp_resource_info" class="anchor field">§</a><code>otlp_resource_info: <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.bool.html">bool</a></code></span><span id="structfield.suspend" class="structfield section-header"><a href="#structfield.suspend" class="anchor field">§</a><code>suspend: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;<a class="type" href="https://doc.rust-lang.org/1.98.1/core/sync/atomic/type.AtomicBool.html" title="type core::sync::atomic::AtomicBool">AtomicBool</a>&gt;</code></span><span id="structfield.otlp_metrics_table_legacy_cache" class="structfield section-header"><a href="#structfield.otlp_metrics_table_legacy_cache" class="anchor field">§</a><code>otlp_metrics_table_legacy_cache: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;DashMap&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>, DashMap&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>, <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.bool.html">bool</a>&gt;&gt;&gt;</code></span><h2 id="implementations" class="section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Instance" class="impl"><a class="src rightside" href="../../src/frontend/instance/dashboard.rs.html#56-392">Source</a><a href="#impl-Instance" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.build_dashboard_schema" class="method"><a class="src rightside" href="../../src/frontend/instance/dashboard.rs.html#59-96">Source</a><h4 class="code-header">fn <a href="#method.build_dashboard_schema" class="fn">build_dashboard_schema</a>() -&gt; (<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>, <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>&gt;, <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;ColumnDef&gt;)</h4></section></summary><div class="docblock"><p>Build a schema for dashboard table.
Returns the (time index, primary keys, column) definitions.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.build_dashboard_insert_column_schemas" class="method"><a class="src rightside" href="../../src/frontend/instance/dashboard.rs.html#99-120">Source</a><h4 class="code-header">fn <a href="#method.build_dashboard_insert_column_schemas" class="fn">build_dashboard_insert_column_schemas</a>() -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;PbColumnSchema&gt;</h4></section></summary><div class="docblock"><p>Build a column schemas for inserting a row into the dashboard table.</p>
</div></details><section id="method.dashboard_query_ctx" class="method"><a class="src rightside" href="../../src/frontend/instance/dashboard.rs.html#122-128">Source</a><h4 class="code-header">fn <a href="#method.dashboard_query_ctx" class="fn">dashboard_query_ctx</a>(table_info: &amp;<a class="struct" href="../../table/metadata/struct.TableInfo.html" title="struct table::metadata::TableInfo">TableInfo</a>) -&gt; <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a></h4></section><section id="method.create_dashboard_table_if_not_exists" class="method"><a class="src rightside" href="../../src/frontend/instance/dashboard.rs.html#130-195">Source</a><h4 class="code-header">async fn <a href="#method.create_dashboard_table_if_not_exists" class="fn">create_dashboard_table_if_not_exists</a>(
&amp;self,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">Result</a>&lt;<a class="type" href="../../table/table/type.TableRef.html" title="type table::table::TableRef">TableRef</a>&gt;</h4></section><details class="toggle method-toggle" open><summary><section id="method.insert_dashboard" class="method"><a class="src rightside" href="../../src/frontend/instance/dashboard.rs.html#198-248">Source</a><h4 class="code-header">async fn <a href="#method.insert_dashboard" class="fn">insert_dashboard</a>(
&amp;self,
name: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
definition: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
query_ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.unit.html">()</a>&gt;</h4></section></summary><div class="docblock"><p>Insert a dashboard into the dashboard table.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.list_dashboards" class="method"><a class="src rightside" href="../../src/frontend/instance/dashboard.rs.html#251-335">Source</a><h4 class="code-header">async fn <a href="#method.list_dashboards" class="fn">list_dashboards</a>(
&amp;self,
query_ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">Result</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="../../servers/query_handler/struct.DashboardDefinition.html" title="struct servers::query_handler::DashboardDefinition">DashboardDefinition</a>&gt;&gt;</h4></section></summary><div class="docblock"><p>List all dashboards.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.delete_dashboard" class="method"><a class="src rightside" href="../../src/frontend/instance/dashboard.rs.html#338-391">Source</a><h4 class="code-header">async fn <a href="#method.delete_dashboard" class="fn">delete_dashboard</a>(
&amp;self,
name: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
query_ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.unit.html">()</a>&gt;</h4></section></summary><div class="docblock"><p>Delete a dashboard by name.</p>
</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Instance-1" class="impl"><a class="src rightside" href="../../src/frontend/instance/export_database.rs.html#46-150">Source</a><a href="#impl-Instance-1" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section></summary><div class="impl-items"><section id="method.copy_metric_database" class="method"><a class="src rightside" href="../../src/frontend/instance/export_database.rs.html#47-67">Source</a><h4 class="code-header">pub(crate) async fn <a href="#method.copy_metric_database" class="fn">copy_metric_database</a>(
&amp;self,
arg: <a class="struct" href="../../sql/statements/copy/struct.CopyDatabaseArgument.html" title="struct sql::statements::copy::CopyDatabaseArgument">CopyDatabaseArgument</a>,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../error/type.Result.html" title="type frontend::error::Result">Result</a>&lt;Output&gt;</h4></section><section id="method.export_database" class="method"><a class="src rightside" href="../../src/frontend/instance/export_database.rs.html#70-85">Source</a><h4 class="code-header">async fn <a href="#method.export_database" class="fn">export_database</a>(
&amp;self,
req: <a class="struct" href="../../table/requests/struct.CopyDatabaseRequest.html" title="struct table::requests::CopyDatabaseRequest">CopyDatabaseRequest</a>,
names: <a class="enum" href="https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;[<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>]&gt;,
cancellation: &amp;CancellationToken,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../error/type.Result.html" title="type frontend::error::Result">Result</a>&lt;<a class="struct" href="../../operator/statement/export_database/struct.DatabaseExportSummary.html" title="struct operator::statement::export_database::DatabaseExportSummary">DatabaseExportSummary</a>&gt;</h4></section><section id="method.prepare_database_export" class="method"><a class="src rightside" href="../../src/frontend/instance/export_database.rs.html#99-149">Source</a><h4 class="code-header">async fn <a href="#method.prepare_database_export" class="fn">prepare_database_export</a>(
&amp;self,
req: <a class="struct" href="../../table/requests/struct.CopyDatabaseRequest.html" title="struct table::requests::CopyDatabaseRequest">CopyDatabaseRequest</a>,
names: <a class="enum" href="https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;[<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>]&gt;,
ctx: &amp;<a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../error/type.Result.html" title="type frontend::error::Result">Result</a>&lt;<a class="struct" href="../../operator/statement/export_database/struct.PreparedDatabaseExport.html" title="struct operator::statement::export_database::PreparedDatabaseExport">PreparedDatabaseExport</a>&gt;</h4></section></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Instance-2" class="impl"><a class="src rightside" href="../../src/frontend/instance/grpc.rs.html#359-642">Source</a><a href="#impl-Instance-2" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section></summary><div class="impl-items"><section id="method.check_table_permission" class="method"><a class="src rightside" href="../../src/frontend/instance/grpc.rs.html#360-370">Source</a><h4 class="code-header">pub(crate) fn <a href="#method.check_table_permission" class="fn">check_table_permission</a>(
&amp;self,
ctx: &amp;<a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
req: <a class="enum" href="../../auth/permission/enum.PermissionReq.html" title="enum auth::permission::PermissionReq">PermissionReq</a>&lt;'_&gt;,
targets: <a class="enum" href="../../auth/permission/enum.PermissionTableTargets.html" title="enum auth::permission::PermissionTableTargets">PermissionTableTargets</a>,
) -&gt; <a class="type" href="../../auth/error/type.Result.html" title="type auth::error::Result">Result</a>&lt;<a class="enum" href="../../auth/permission/enum.PermissionResp.html" title="enum auth::permission::PermissionResp">PermissionResp</a>&gt;</h4></section><details class="toggle method-toggle" open><summary><section id="method.check_row_insert_permission" class="method"><a class="src rightside" href="../../src/frontend/instance/grpc.rs.html#373-384">Source</a><h4 class="code-header">pub(crate) fn <a href="#method.check_row_insert_permission" class="fn">check_row_insert_permission</a>(
&amp;self,
requests: &amp;RowInsertRequests,
ctx: &amp;<a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
req: <a class="enum" href="../../auth/permission/enum.PermissionReq.html" title="enum auth::permission::PermissionReq">PermissionReq</a>&lt;'_&gt;,
) -&gt; <a class="type" href="../../auth/error/type.Result.html" title="type auth::error::Result">Result</a>&lt;<a class="enum" href="../../auth/permission/enum.PermissionResp.html" title="enum auth::permission::PermissionResp">PermissionResp</a>&gt;</h4></section></summary><div class="docblock"><p>Checks every logical table targeted by normalized row inserts.</p>
</div></details><section id="method.handle_put_record_batch_stream_inner" class="method"><a class="src rightside" href="../../src/frontend/instance/grpc.rs.html#386-478">Source</a><h4 class="code-header">fn <a href="#method.handle_put_record_batch_stream_inner" class="fn">handle_put_record_batch_stream_inner</a>(
&amp;self,
stream: <a class="struct" href="../../servers/grpc/flight/struct.PutRecordBatchRequestStream.html" title="struct servers::grpc::flight::PutRecordBatchRequestStream">PutRecordBatchRequestStream</a>,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn Stream&lt;Item = <a class="type" href="../error/type.Result.html" title="type frontend::error::Result">Result</a>&lt;DoPutResponse&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>&gt;&gt;</h4></section><section id="method.handle_insert_plan" class="method"><a class="src rightside" href="../../src/frontend/instance/grpc.rs.html#480-554">Source</a><h4 class="code-header">async fn <a href="#method.handle_insert_plan" class="fn">handle_insert_plan</a>(
&amp;self,
insert: InsertIntoPlan,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../error/type.Result.html" title="type frontend::error::Result">Result</a>&lt;Output&gt;</h4></section><section id="method.handle_inserts" class="method"><a class="src rightside" href="../../src/frontend/instance/grpc.rs.html#556-565">Source</a><h4 class="code-header">pub async fn <a href="#method.handle_inserts" class="fn">handle_inserts</a>(
&amp;self,
requests: InsertRequests,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../error/type.Result.html" title="type frontend::error::Result">Result</a>&lt;Output&gt;</h4></section><section id="method.handle_row_inserts" class="method"><a class="src rightside" href="../../src/frontend/instance/grpc.rs.html#568-585">Source</a><h4 class="code-header">pub async fn <a href="#method.handle_row_inserts" class="fn">handle_row_inserts</a>(
&amp;self,
requests: RowInsertRequests,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
accommodate_existing_schema: <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.bool.html">bool</a>,
is_single_value: <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.bool.html">bool</a>,
) -&gt; <a class="type" href="../error/type.Result.html" title="type frontend::error::Result">Result</a>&lt;Output&gt;</h4></section><section id="method.handle_influx_row_inserts" class="method"><a class="src rightside" href="../../src/frontend/instance/grpc.rs.html#588-604">Source</a><h4 class="code-header">pub async fn <a href="#method.handle_influx_row_inserts" class="fn">handle_influx_row_inserts</a>(
&amp;self,
requests: RowInsertRequests,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../error/type.Result.html" title="type frontend::error::Result">Result</a>&lt;Output&gt;</h4></section><section id="method.handle_metric_row_inserts" class="method"><a class="src rightside" href="../../src/frontend/instance/grpc.rs.html#607-617">Source</a><h4 class="code-header">pub async fn <a href="#method.handle_metric_row_inserts" class="fn">handle_metric_row_inserts</a>(
&amp;self,
requests: RowInsertRequests,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
physical_table: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>,
) -&gt; <a class="type" href="../error/type.Result.html" title="type frontend::error::Result">Result</a>&lt;Output&gt;</h4></section><section id="method.handle_deletes" class="method"><a class="src rightside" href="../../src/frontend/instance/grpc.rs.html#620-629">Source</a><h4 class="code-header">pub async fn <a href="#method.handle_deletes" class="fn">handle_deletes</a>(
&amp;self,
requests: DeleteRequests,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../error/type.Result.html" title="type frontend::error::Result">Result</a>&lt;Output&gt;</h4></section><section id="method.handle_row_deletes" class="method"><a class="src rightside" href="../../src/frontend/instance/grpc.rs.html#632-641">Source</a><h4 class="code-header">pub async fn <a href="#method.handle_row_deletes" class="fn">handle_row_deletes</a>(
&amp;self,
requests: RowDeleteRequests,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../error/type.Result.html" title="type frontend::error::Result">Result</a>&lt;Output&gt;</h4></section></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Instance-3" class="impl"><a class="src rightside" href="../../src/frontend/instance/import_packed.rs.html#26-55">Source</a><a href="#impl-Instance-3" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section></summary><div class="impl-items"><section id="method.copy_packed_database" class="method"><a class="src rightside" href="../../src/frontend/instance/import_packed.rs.html#27-54">Source</a><h4 class="code-header">pub(crate) async fn <a href="#method.copy_packed_database" class="fn">copy_packed_database</a>(
&amp;self,
arg: <a class="struct" href="../../sql/statements/copy/struct.CopyDatabaseArgument.html" title="struct sql::statements::copy::CopyDatabaseArgument">CopyDatabaseArgument</a>,
stmt: &amp;<a class="enum" href="../../sql/statements/statement/enum.Statement.html" title="enum sql::statements::statement::Statement">Statement</a>,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../error/type.Result.html" title="type frontend::error::Result">Result</a>&lt;Output&gt;</h4></section></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Instance-4" class="impl"><a class="src rightside" href="../../src/frontend/instance/jaeger.rs.html#63-78">Source</a><a href="#impl-Instance-4" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section></summary><div class="impl-items"><section id="method.check_jaeger_query_permission" class="method"><a class="src rightside" href="../../src/frontend/instance/jaeger.rs.html#64-77">Source</a><h4 class="code-header">async fn <a href="#method.check_jaeger_query_permission" class="fn">check_jaeger_query_permission</a>(
&amp;self,
ctx: &amp;<a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.unit.html">()</a>&gt;</h4></section></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Instance-5" class="impl"><a class="src rightside" href="../../src/frontend/instance/log_handler.rs.html#39-62">Source</a><a href="#impl-Instance-5" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section></summary><div class="impl-items"><section id="method.prepare_log_insert" class="method"><a class="src rightside" href="../../src/frontend/instance/log_handler.rs.html#40-61">Source</a><h4 class="code-header">async fn <a href="#method.prepare_log_insert" class="fn">prepare_log_insert</a>(
&amp;self,
log: RowInsertRequests,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;RowInsertRequests&gt;</h4></section></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Instance-6" class="impl"><a class="src rightside" href="../../src/frontend/instance/log_handler.rs.html#168-192">Source</a><a href="#impl-Instance-6" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section></summary><div class="impl-items"><section id="method.handle_log_inserts" class="method"><a class="src rightside" href="../../src/frontend/instance/log_handler.rs.html#169-179">Source</a><h4 class="code-header">pub async fn <a href="#method.handle_log_inserts" class="fn">handle_log_inserts</a>(
&amp;self,
log: RowInsertRequests,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;Output&gt;</h4></section><section id="method.handle_trace_inserts" class="method"><a class="src rightside" href="../../src/frontend/instance/log_handler.rs.html#181-191">Source</a><h4 class="code-header">pub async fn <a href="#method.handle_trace_inserts" class="fn">handle_trace_inserts</a>(
&amp;self,
rows: RowInsertRequests,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;Output&gt;</h4></section></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Instance-7" class="impl"><a class="src rightside" href="../../src/frontend/instance/logical_batcher.rs.html#28-68">Source</a><a href="#impl-Instance-7" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.init_logical_batcher" class="method"><a class="src rightside" href="../../src/frontend/instance/logical_batcher.rs.html#31-63">Source</a><h4 class="code-header">pub fn <a href="#method.init_logical_batcher" class="fn">init_logical_batcher</a>(self: &amp;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;Self&gt;, options: &amp;<a class="struct" href="../frontend/struct.FrontendOptions.html" title="struct frontend::frontend::FrontendOptions">FrontendOptions</a>)</h4></section></summary><div class="docblock"><p>Initializes the shared logical batcher for enabled ingestion endpoints.
Disabled endpoints leave it uninitialized so downstream routers can enable it.</p>
</div></details><section id="method.logical_batcher" class="method"><a class="src rightside" href="../../src/frontend/instance/logical_batcher.rs.html#65-67">Source</a><h4 class="code-header">pub(crate) fn <a href="#method.logical_batcher" class="fn">logical_batcher</a>(
&amp;self,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;<a class="struct" href="../../servers/batcher/logical_table/struct.LogicalTablePendingRowsBatcher.html" title="struct servers::batcher::logical_table::LogicalTablePendingRowsBatcher">LogicalTablePendingRowsBatcher</a>&gt;&gt;</h4></section></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Instance-8" class="impl"><a class="src rightside" href="../../src/frontend/instance/opentsdb.rs.html#76-111">Source</a><a href="#impl-Instance-8" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section></summary><div class="impl-items"><section id="method.execute_opentsdb_write" class="method"><a class="src rightside" href="../../src/frontend/instance/opentsdb.rs.html#77-110">Source</a><h4 class="code-header">async fn <a href="#method.execute_opentsdb_write" class="fn">execute_opentsdb_write</a>(
&amp;self,
data_points: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="../../servers/opentsdb/codec/struct.DataPoint.html" title="struct servers::opentsdb::codec::DataPoint">DataPoint</a>&gt;,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.usize.html">usize</a>&gt;</h4></section></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Instance-9" class="impl"><a class="src rightside" href="../../src/frontend/instance/otlp/trace_ingest.rs.html#1040-2426">Source</a><a href="#impl-Instance-9" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.ingest_trace_spans" class="method"><a class="src rightside" href="../../src/frontend/instance/otlp/trace_ingest.rs.html#1043-1323">Source</a><h4 class="code-header">pub(super) async fn <a href="#method.ingest_trace_spans" class="fn">ingest_trace_spans</a>(
&amp;self,
pipeline: &amp;<a class="enum" href="../../pipeline/manager/enum.PipelineWay.html" title="enum pipeline::manager::PipelineWay">PipelineWay</a>,
table_name: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>,
groups: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="../../servers/otlp/trace/span/struct.TraceSpanGroup.html" title="struct servers::otlp::trace::span::TraceSpanGroup">TraceSpanGroup</a>&gt;,
conventions: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="struct" href="../../servers/query_handler/struct.TraceIngestOutcome.html" title="struct servers::query_handler::TraceIngestOutcome">TraceIngestOutcome</a>&gt;</h4></section></summary><div class="docblock"><p>Ingest OTLP trace spans with chunk-level writes and span-level fallback on
deterministic chunk failures.</p>
</div></details><section id="method.prepare_trace_aux_write" class="method"><a class="src rightside" href="../../src/frontend/instance/otlp/trace_ingest.rs.html#1325-1351">Source</a><h4 class="code-header">fn <a href="#method.prepare_trace_aux_write" class="fn">prepare_trace_aux_write</a>(
&amp;self,
aux_data: <a class="struct" href="../../servers/otlp/trace/struct.TraceAuxData.html" title="struct servers::otlp::trace::TraceAuxData">TraceAuxData</a>,
pipeline: &amp;<a class="enum" href="../../pipeline/manager/enum.PipelineWay.html" title="enum pipeline::manager::PipelineWay">PipelineWay</a>,
table_name: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
ctx: &amp;<a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
metrics: <a class="enum" href="https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;(&amp;IntCounter, &amp;IntCounter)&gt;,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;(RowInsertRequests, <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="otlp/trace_ingest/struct.TraceAuxCacheKey.html" title="struct frontend::instance::otlp::trace_ingest::TraceAuxCacheKey">TraceAuxCacheKey</a>&gt;)&gt;</h4></section><section id="method.insert_trace_aux_requests" class="method"><a class="src rightside" href="../../src/frontend/instance/otlp/trace_ingest.rs.html#1370-1389">Source</a><h4 class="code-header">async fn <a href="#method.insert_trace_aux_requests" class="fn">insert_trace_aux_requests</a>(
&amp;self,
requests: RowInsertRequests,
keys: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="otlp/trace_ingest/struct.TraceAuxCacheKey.html" title="struct frontend::instance::otlp::trace_ingest::TraceAuxCacheKey">TraceAuxCacheKey</a>&gt;,
pipeline: &amp;<a class="enum" href="../../pipeline/manager/enum.PipelineWay.html" title="enum pipeline::manager::PipelineWay">PipelineWay</a>,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;Output&gt;</h4></section><details class="toggle method-toggle" open><summary><section id="method.ingest_trace_chunk" class="method"><a class="src rightside" href="../../src/frontend/instance/otlp/trace_ingest.rs.html#1393-1491">Source</a><h4 class="code-header">async fn <a href="#method.ingest_trace_chunk" class="fn">ingest_trace_chunk</a>(
&amp;self,
ingest_ctx: &amp;<a class="struct" href="otlp/trace_ingest/struct.TraceChunkIngestContext.html" title="struct frontend::instance::otlp::trace_ingest::TraceChunkIngestContext">TraceChunkIngestContext</a>&lt;'_&gt;,
chunk: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="../../servers/otlp/trace/span/struct.TraceSpan.html" title="struct servers::otlp::trace::span::TraceSpan">TraceSpan</a>&gt;,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
ingest_state: &amp;mut <a class="struct" href="otlp/trace_ingest/struct.TraceIngestState.html" title="struct frontend::instance::otlp::trace_ingest::TraceIngestState">TraceIngestState</a>,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.unit.html">()</a>&gt;</h4></section></summary><div class="docblock"><p>Ingest one owned trace chunk so successful spans can be moved into the
accepted set without extra cloning.</p>
</div></details><section id="method.ingest_trace_v1_prepared_chunks" class="method"><a class="src rightside" href="../../src/frontend/instance/otlp/trace_ingest.rs.html#1493-1556">Source</a><h4 class="code-header">async fn <a href="#method.ingest_trace_v1_prepared_chunks" class="fn">ingest_trace_v1_prepared_chunks</a>(
&amp;self,
ingest_ctx: &amp;<a class="struct" href="otlp/trace_ingest/struct.TraceChunkIngestContext.html" title="struct frontend::instance::otlp::trace_ingest::TraceChunkIngestContext">TraceChunkIngestContext</a>&lt;'_&gt;,
request_schema: <a class="struct" href="otlp/trace_ingest/struct.TraceRequestSchema.html" title="struct frontend::instance::otlp::trace_ingest::TraceRequestSchema">TraceRequestSchema</a>,
chunks: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="otlp/trace_ingest/struct.TraceChunkRetry.html" title="struct frontend::instance::otlp::trace_ingest::TraceChunkRetry">TraceChunkRetry</a>&gt;,
chunk_states: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="enum" href="otlp/trace_ingest/enum.TraceChunkSchemaState.html" title="enum frontend::instance::otlp::trace_ingest::TraceChunkSchemaState">TraceChunkSchemaState</a>&gt;,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
ingest_state: &amp;mut <a class="struct" href="otlp/trace_ingest/struct.TraceIngestState.html" title="struct frontend::instance::otlp::trace_ingest::TraceIngestState">TraceIngestState</a>,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.unit.html">()</a>&gt;</h4></section><section id="method.ingest_trace_v1_chunk" class="method"><a class="src rightside" href="../../src/frontend/instance/otlp/trace_ingest.rs.html#1558-1671">Source</a><h4 class="code-header">async fn <a href="#method.ingest_trace_v1_chunk" class="fn">ingest_trace_v1_chunk</a>(
&amp;self,
request_schema: &amp;<a class="struct" href="otlp/trace_ingest/struct.TraceRequestSchema.html" title="struct frontend::instance::otlp::trace_ingest::TraceRequestSchema">TraceRequestSchema</a>,
batch_index: <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.usize.html">usize</a>,
retry: <a class="struct" href="otlp/trace_ingest/struct.TraceChunkRetry.html" title="struct frontend::instance::otlp::trace_ingest::TraceChunkRetry">TraceChunkRetry</a>,
schema_state: <a class="enum" href="otlp/trace_ingest/enum.TraceChunkSchemaState.html" title="enum frontend::instance::otlp::trace_ingest::TraceChunkSchemaState">TraceChunkSchemaState</a>,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
ingest_state: &amp;mut <a class="struct" href="otlp/trace_ingest/struct.TraceIngestState.html" title="struct frontend::instance::otlp::trace_ingest::TraceIngestState">TraceIngestState</a>,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.unit.html">()</a>&gt;</h4></section><section id="method.ingest_trace_v1_rows_span_by_span" class="method"><a class="src rightside" href="../../src/frontend/instance/otlp/trace_ingest.rs.html#1673-1759">Source</a><h4 class="code-header">async fn <a href="#method.ingest_trace_v1_rows_span_by_span" class="fn">ingest_trace_v1_rows_span_by_span</a>(
&amp;self,
retry: <a class="struct" href="otlp/trace_ingest/struct.TraceChunkRetry.html" title="struct frontend::instance::otlp::trace_ingest::TraceChunkRetry">TraceChunkRetry</a>,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
ingest_state: &amp;mut <a class="struct" href="otlp/trace_ingest/struct.TraceIngestState.html" title="struct frontend::instance::otlp::trace_ingest::TraceIngestState">TraceIngestState</a>,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.unit.html">()</a>&gt;</h4></section><details class="toggle method-toggle" open><summary><section id="method.insert_trace_requests" class="method"><a class="src rightside" href="../../src/frontend/instance/otlp/trace_ingest.rs.html#1762-1786">Source</a><h4 class="code-header">async fn <a href="#method.insert_trace_requests" class="fn">insert_trace_requests</a>(
&amp;self,
requests: RowInsertRequests,
pipeline: &amp;<a class="enum" href="../../pipeline/manager/enum.PipelineWay.html" title="enum pipeline::manager::PipelineWay">PipelineWay</a>,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;Output&gt;</h4></section></summary><div class="docblock"><p>Reconcile and insert one trace request batch.</p>
</div></details><section id="method.plan_trace_v1_request_schema" class="method"><a class="src rightside" href="../../src/frontend/instance/otlp/trace_ingest.rs.html#1788-1810">Source</a><h4 class="code-header">async fn <a href="#method.plan_trace_v1_request_schema" class="fn">plan_trace_v1_request_schema</a>(
&amp;self,
table_name: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
request_schema: &amp;mut <a class="struct" href="otlp/trace_ingest/struct.TraceRequestSchema.html" title="struct frontend::instance::otlp::trace_ingest::TraceRequestSchema">TraceRequestSchema</a>,
ctx: &amp;<a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="enum" href="otlp/trace_ingest/enum.TraceRequestSchemaPlan.html" title="enum frontend::instance::otlp::trace_ingest::TraceRequestSchemaPlan">TraceRequestSchemaPlan</a>&gt;</h4></section><section id="method.prepare_trace_v1_request_schema" class="method"><a class="src rightside" href="../../src/frontend/instance/otlp/trace_ingest.rs.html#1812-1890">Source</a><h4 class="code-header">async fn <a href="#method.prepare_trace_v1_request_schema" class="fn">prepare_trace_v1_request_schema</a>(
&amp;self,
table_name: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
request_schema: &amp;mut <a class="struct" href="otlp/trace_ingest/struct.TraceRequestSchema.html" title="struct frontend::instance::otlp::trace_ingest::TraceRequestSchema">TraceRequestSchema</a>,
chunks: &amp;mut <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="otlp/trace_ingest/struct.TraceChunkRetry.html" title="struct frontend::instance::otlp::trace_ingest::TraceChunkRetry">TraceChunkRetry</a>&gt;,
chunk_states: &amp;mut <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="enum" href="otlp/trace_ingest/enum.TraceChunkSchemaState.html" title="enum frontend::instance::otlp::trace_ingest::TraceChunkSchemaState">TraceChunkSchemaState</a>&gt;,
ctx: &amp;<a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.unit.html">()</a>&gt;</h4></section><section id="method.prevalidate_trace_v1_fixed_columns" class="method"><a class="src rightside" href="../../src/frontend/instance/otlp/trace_ingest.rs.html#1892-1942">Source</a><h4 class="code-header">fn <a href="#method.prevalidate_trace_v1_fixed_columns" class="fn">prevalidate_trace_v1_fixed_columns</a>(
chunks: &amp;[<a class="struct" href="otlp/trace_ingest/struct.TraceChunkRetry.html" title="struct frontend::instance::otlp::trace_ingest::TraceChunkRetry">TraceChunkRetry</a>],
chunk_states: &amp;[<a class="enum" href="otlp/trace_ingest/enum.TraceChunkSchemaState.html" title="enum frontend::instance::otlp::trace_ingest::TraceChunkSchemaState">TraceChunkSchemaState</a>],
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/std/collections/hash/map/struct.HashMap.html" title="struct std::collections::hash::map::HashMap">HashMap</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>, <a class="struct" href="https://doc.rust-lang.org/1.98.1/std/collections/hash/set/struct.HashSet.html" title="struct std::collections::hash::set::HashSet">HashSet</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.usize.html">usize</a>&gt;&gt;&gt;</h4></section><section id="method.prevalidate_trace_v1_chunk_rewrites" class="method"><a class="src rightside" href="../../src/frontend/instance/otlp/trace_ingest.rs.html#1944-1968">Source</a><h4 class="code-header">fn <a href="#method.prevalidate_trace_v1_chunk_rewrites" class="fn">prevalidate_trace_v1_chunk_rewrites</a>(
request_schema: &amp;<a class="struct" href="otlp/trace_ingest/struct.TraceRequestSchema.html" title="struct frontend::instance::otlp::trace_ingest::TraceRequestSchema">TraceRequestSchema</a>,
chunks: &amp;[<a class="struct" href="otlp/trace_ingest/struct.TraceChunkRetry.html" title="struct frontend::instance::otlp::trace_ingest::TraceChunkRetry">TraceChunkRetry</a>],
chunk_states: &amp;mut [<a class="enum" href="otlp/trace_ingest/enum.TraceChunkSchemaState.html" title="enum frontend::instance::otlp::trace_ingest::TraceChunkSchemaState">TraceChunkSchemaState</a>],
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/std/collections/hash/map/struct.HashMap.html" title="struct std::collections::hash::map::HashMap">HashMap</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>, <a class="struct" href="https://doc.rust-lang.org/1.98.1/std/collections/hash/set/struct.HashSet.html" title="struct std::collections::hash::set::HashSet">HashSet</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.usize.html">usize</a>&gt;&gt;&gt;</h4></section><section id="method.prepare_trace_v1_chunk_rewrite" class="method"><a class="src rightside" href="../../src/frontend/instance/otlp/trace_ingest.rs.html#1970-2000">Source</a><h4 class="code-header">fn <a href="#method.prepare_trace_v1_chunk_rewrite" class="fn">prepare_trace_v1_chunk_rewrite</a>(
request_schema: &amp;<a class="struct" href="otlp/trace_ingest/struct.TraceRequestSchema.html" title="struct frontend::instance::otlp::trace_ingest::TraceRequestSchema">TraceRequestSchema</a>,
batch_index: <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.usize.html">usize</a>,
request: &amp;mut RowInsertRequest,
state: &amp;mut <a class="enum" href="otlp/trace_ingest/enum.TraceChunkSchemaState.html" title="enum frontend::instance::otlp::trace_ingest::TraceChunkSchemaState">TraceChunkSchemaState</a>,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="enum" href="https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>&gt;&gt;</h4></section><section id="method.exclude_trace_v1_schema_observations" class="method"><a class="src rightside" href="../../src/frontend/instance/otlp/trace_ingest.rs.html#2002-2054">Source</a><h4 class="code-header">fn <a href="#method.exclude_trace_v1_schema_observations" class="fn">exclude_trace_v1_schema_observations</a>(
request_schema: &amp;mut <a class="struct" href="otlp/trace_ingest/struct.TraceRequestSchema.html" title="struct frontend::instance::otlp::trace_ingest::TraceRequestSchema">TraceRequestSchema</a>,
chunks: &amp;mut <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="otlp/trace_ingest/struct.TraceChunkRetry.html" title="struct frontend::instance::otlp::trace_ingest::TraceChunkRetry">TraceChunkRetry</a>&gt;,
chunk_states: &amp;mut <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="enum" href="otlp/trace_ingest/enum.TraceChunkSchemaState.html" title="enum frontend::instance::otlp::trace_ingest::TraceChunkSchemaState">TraceChunkSchemaState</a>&gt;,
exclusions: &amp;<a class="struct" href="https://doc.rust-lang.org/1.98.1/std/collections/hash/map/struct.HashMap.html" title="struct std::collections::hash::map::HashMap">HashMap</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>, <a class="struct" href="https://doc.rust-lang.org/1.98.1/std/collections/hash/set/struct.HashSet.html" title="struct std::collections::hash::set::HashSet">HashSet</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.usize.html">usize</a>&gt;&gt;,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.unit.html">()</a>&gt;</h4></section><section id="method.apply_trace_v1_pre_alter" class="method"><a class="src rightside" href="../../src/frontend/instance/otlp/trace_ingest.rs.html#2056-2088">Source</a><h4 class="code-header">async fn <a href="#method.apply_trace_v1_pre_alter" class="fn">apply_trace_v1_pre_alter</a>(
&amp;self,
ctx: &amp;<a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
table_name: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
pre_alter: <a class="struct" href="otlp/trace_ingest/struct.TraceTablePreAlter.html" title="struct frontend::instance::otlp::trace_ingest::TraceTablePreAlter">TraceTablePreAlter</a>,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.unit.html">()</a>&gt;</h4></section><section id="method.classify_trace_prewrite_failure" class="method"><a class="src rightside" href="../../src/frontend/instance/otlp/trace_ingest.rs.html#2090-2107">Source</a><h4 class="code-header">fn <a href="#method.classify_trace_prewrite_failure" class="fn">classify_trace_prewrite_failure</a>(
status: StatusCode,
retryable: <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.bool.html">bool</a>,
) -&gt; <a class="enum" href="otlp/trace_ingest/enum.ChunkFailureReaction.html" title="enum frontend::instance::otlp::trace_ingest::ChunkFailureReaction">ChunkFailureReaction</a></h4></section><section id="method.add_trace_write_cost" class="method"><a class="src rightside" href="../../src/frontend/instance/otlp/trace_ingest.rs.html#2109-2111">Source</a><h4 class="code-header">fn <a href="#method.add_trace_write_cost" class="fn">add_trace_write_cost</a>(outcome: &amp;mut <a class="struct" href="../../servers/query_handler/struct.TraceIngestOutcome.html" title="struct servers::query_handler::TraceIngestOutcome">TraceIngestOutcome</a>, cost: <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.usize.html">usize</a>)</h4></section><details class="toggle method-toggle" open><summary><section id="method.trace_failure_cause" class="method"><a class="src rightside" href="../../src/frontend/instance/otlp/trace_ingest.rs.html#2118-2122">Source</a><h4 class="code-header">fn <a href="#method.trace_failure_cause" class="fn">trace_failure_cause</a>(err: &amp;<a class="enum" href="../../servers/error/enum.Error.html" title="enum servers::error::Error">Error</a>) -&gt; (<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>, <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>)</h4></section></summary><div class="docblock"><p>Returns the full cause of a pre-write failure and its display form.</p>
<p><code>output_msg</code> masks internal errors and unwraps the root cause. Dedup must
key on the full text: two causes can agree on a truncated prefix and
differ exactly where the actionable detail is.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.push_trace_failure_message" class="method"><a class="src rightside" href="../../src/frontend/instance/otlp/trace_ingest.rs.html#2125-2153">Source</a><h4 class="code-header">fn <a href="#method.push_trace_failure_message" class="fn">push_trace_failure_message</a>(
messages: &amp;mut <a class="struct" href="otlp/trace_ingest/struct.TraceFailureMessages.html" title="struct frontend::instance::otlp::trace_ingest::TraceFailureMessages">TraceFailureMessages</a>,
label: &amp;'static <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
key: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
message: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>,
)</h4></section></summary><div class="docblock"><p>Records one failure, merging repeats of <code>(label, key)</code> into a count.</p>
</div></details><section id="method.finish_trace_failure_message" class="method"><a class="src rightside" href="../../src/frontend/instance/otlp/trace_ingest.rs.html#2155-2194">Source</a><h4 class="code-header">fn <a href="#method.finish_trace_failure_message" class="fn">finish_trace_failure_message</a>(
accepted_spans: <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.usize.html">usize</a>,
rejected_spans: <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.usize.html">usize</a>,
messages: <a class="struct" href="otlp/trace_ingest/struct.TraceFailureMessages.html" title="struct frontend::instance::otlp::trace_ingest::TraceFailureMessages">TraceFailureMessages</a>,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>&gt;</h4></section><details class="toggle method-toggle" open><summary><section id="method.alter_trace_table_columns_to_float64" class="method"><a class="src rightside" href="../../src/frontend/instance/otlp/trace_ingest.rs.html#2197-2262">Source</a><h4 class="code-header">async fn <a href="#method.alter_trace_table_columns_to_float64" class="fn">alter_trace_table_columns_to_float64</a>(
&amp;self,
ctx: &amp;<a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
table_name: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
column_names: &amp;[<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>],
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.unit.html">()</a>&gt;</h4></section></summary><div class="docblock"><p>Widen existing trace table columns to Float64 before request rewrite.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.reconcile_trace_column_types" class="method"><a class="src rightside" href="../../src/frontend/instance/otlp/trace_ingest.rs.html#2267-2425">Source</a><h4 class="code-header">async fn <a href="#method.reconcile_trace_column_types" class="fn">reconcile_trace_column_types</a>(
&amp;self,
requests: &amp;mut RowInsertRequests,
ctx: &amp;<a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.unit.html">()</a>&gt;</h4></section></summary><div class="docblock"><p>Coerce request column types and values to match the existing table schema
for compatible type pairs. Existing table schema wins when present;
otherwise the full request batch decides a stable target type.</p>
</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Instance-10" class="impl"><a class="src rightside" href="../../src/frontend/instance/otlp.rs.html#320-381">Source</a><a href="#impl-Instance-10" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.handle_otlp_metric_row_inserts" class="method"><a class="src rightside" href="../../src/frontend/instance/otlp.rs.html#323-380">Source</a><h4 class="code-header">pub async fn <a href="#method.handle_otlp_metric_row_inserts" class="fn">handle_otlp_metric_row_inserts</a>(
&amp;self,
requests: RowInsertRequests,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
metric_ctx: &amp;<a class="struct" href="../../session/protocol_ctx/struct.OtlpMetricCtx.html" title="struct session::protocol_ctx::OtlpMetricCtx">OtlpMetricCtx</a>,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;Output&gt;</h4></section></summary><div class="docblock"><p>Inserts converted OTLP metrics through the eligible batching or ordinary write path.
The caller must check table permissions and admit the complete request first.</p>
</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Instance-11" class="impl"><a class="src rightside" href="../../src/frontend/instance/prom_store.rs.html#201-281">Source</a><a href="#impl-Instance-11" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section></summary><div class="impl-items"><section id="method.handle_remote_query" class="method"><a class="src rightside" href="../../src/frontend/instance/prom_store.rs.html#203-259">Source</a><h4 class="code-header">async fn <a href="#method.handle_remote_query" class="fn">handle_remote_query</a>(
&amp;self,
ctx: &amp;<a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
catalog_name: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
schema_name: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
table_name: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
query: &amp;Query,
) -&gt; <a class="type" href="../error/type.Result.html" title="type frontend::error::Result">Result</a>&lt;<a class="struct" href="prom_store/struct.RemoteQueryOutput.html" title="struct frontend::instance::prom_store::RemoteQueryOutput">RemoteQueryOutput</a>&gt;</h4></section><section id="method.handle_remote_queries" class="method"><a class="src rightside" href="../../src/frontend/instance/prom_store.rs.html#262-280">Source</a><h4 class="code-header">async fn <a href="#method.handle_remote_queries" class="fn">handle_remote_queries</a>(
&amp;self,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
queries: &amp;[Query],
query_targets: &amp;[<a class="struct" href="../../auth/permission/struct.PermissionTableTarget.html" title="struct auth::permission::PermissionTableTarget">PermissionTableTarget</a>],
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="prom_store/struct.RemoteQueryOutput.html" title="struct frontend::instance::prom_store::RemoteQueryOutput">RemoteQueryOutput</a>&gt;&gt;</h4></section></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Instance-12" class="impl"><a class="src rightside" href="../../src/frontend/instance/prom_store.rs.html#446-480">Source</a><a href="#impl-Instance-12" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section></summary><div class="impl-items"><section id="method.prepare_prom_store_write" class="method"><a class="src rightside" href="../../src/frontend/instance/prom_store.rs.html#447-454">Source</a><h4 class="code-header">async fn <a href="#method.prepare_prom_store_write" class="fn">prepare_prom_store_write</a>(
&amp;self,
request: RowInsertRequests,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;(RowInsertRequests, <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>)&gt;</h4></section><section id="method.execute_prom_store_write" class="method"><a class="src rightside" href="../../src/frontend/instance/prom_store.rs.html#456-479">Source</a><h4 class="code-header">async fn <a href="#method.execute_prom_store_write" class="fn">execute_prom_store_write</a>(
&amp;self,
request: RowInsertRequests,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
with_metric_engine: <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.bool.html">bool</a>,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;Output&gt;</h4></section></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Instance-13" class="impl"><a class="src rightside" href="../../src/frontend/instance/prom_store.rs.html#658-711">Source</a><a href="#impl-Instance-13" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section></summary><div class="impl-items"><section id="method.create_metric_physical_table_if_missing" class="method"><a class="src rightside" href="../../src/frontend/instance/prom_store.rs.html#659-710">Source</a><h4 class="code-header">async fn <a href="#method.create_metric_physical_table_if_missing" class="fn">create_metric_physical_table_if_missing</a>(
&amp;self,
catalog: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
schema: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
physical_table: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.unit.html">()</a>&gt;</h4></section></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Instance-14" class="impl"><a class="src rightside" href="../../src/frontend/instance/promql.rs.html#61-341">Source</a><a href="#impl-Instance-14" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.handle_query_metric_names" class="method"><a class="src rightside" href="../../src/frontend/instance/promql.rs.html#64-124">Source</a><h4 class="code-header">pub(crate) async fn <a href="#method.handle_query_metric_names" class="fn">handle_query_metric_names</a>(
&amp;self,
matchers: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;Matcher&gt;,
schema: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
ctx: &amp;<a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../error/type.Result.html" title="type frontend::error::Result">Result</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>&gt;&gt;</h4></section></summary><div class="docblock"><p>Handles metric names query request, returns the names.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.handle_query_metric_names_by_labels" class="method"><a class="src rightside" href="../../src/frontend/instance/promql.rs.html#139-173">Source</a><h4 class="code-header">pub(crate) async fn <a href="#method.handle_query_metric_names_by_labels" class="fn">handle_query_metric_names_by_labels</a>(
&amp;self,
matchers: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;Matcher&gt;,
schema: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
start: <a class="struct" href="https://doc.rust-lang.org/1.98.1/std/time/struct.SystemTime.html" title="struct std::time::SystemTime">SystemTime</a>,
end: <a class="struct" href="https://doc.rust-lang.org/1.98.1/std/time/struct.SystemTime.html" title="struct std::time::SystemTime">SystemTime</a>,
ctx: &amp;<a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../error/type.Result.html" title="type frontend::error::Result">Result</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>&gt;&gt;</h4></section></summary><div class="docblock"><p>Handles a metric names query constrained by matchers on ordinary labels.</p>
<p><a href="struct.Instance.html#method.handle_query_metric_names" title="method frontend::instance::Instance::handle_query_metric_names"><code>Instance::handle_query_metric_names</code></a> answers from table metadata, which
cannot resolve a label matcher: whether a metric carries <code>pod="abc"</code> is a
property of its data. The metric engine multiplexes the logical tables of
one physical table into a region holding the union of their label columns
alongside <code>__table_id</code>, so a single distinct scan per physical table
resolves the matchers for all of its logical tables at once.</p>
<p>Only metric engine tables are covered. Tables on other engines share no
column space to scan, and a scan per table does not scale to the table
counts this API is expected to answer over.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.physical_metric_tables" class="method"><a class="src rightside" href="../../src/frontend/instance/promql.rs.html#179-196">Source</a><h4 class="code-header">async fn <a href="#method.physical_metric_tables" class="fn">physical_metric_tables</a>(
&amp;self,
catalog: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
schema: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
ctx: &amp;<a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../error/type.Result.html" title="type frontend::error::Result">Result</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="type" href="../../table/table/type.TableRef.html" title="type table::table::TableRef">TableRef</a>&gt;&gt;</h4></section></summary><div class="docblock"><p>Returns the metric engine physical tables of a schema.</p>
<p>Their data regions carry the union of their logical tables’ label columns,
so scanning these covers every metric of the schema.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.scan_distinct_column" class="method"><a class="src rightside" href="../../src/frontend/instance/promql.rs.html#203-240">Source</a><h4 class="code-header">async fn <a href="#method.scan_distinct_column" class="fn">scan_distinct_column</a>(
&amp;self,
table: <a class="type" href="../../table/table/type.TableRef.html" title="type table::table::TableRef">TableRef</a>,
matchers: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;Matcher&gt;,
column: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>,
start: <a class="struct" href="https://doc.rust-lang.org/1.98.1/std/time/struct.SystemTime.html" title="struct std::time::SystemTime">SystemTime</a>,
end: <a class="struct" href="https://doc.rust-lang.org/1.98.1/std/time/struct.SystemTime.html" title="struct std::time::SystemTime">SystemTime</a>,
ctx: &amp;<a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../error/type.Result.html" title="type frontend::error::Result">Result</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;RecordBatch&gt;&gt;</h4></section></summary><div class="docblock"><p>Scans <code>table</code> for the distinct values of <code>column</code> that match <code>matchers</code>
within the time range.</p>
<p>Callers look the table up and decode the batches; the plan between is the
same whether the projected column is a label or <code>__table_id</code>.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.scan_matching_table_ids" class="method"><a class="src rightside" href="../../src/frontend/instance/promql.rs.html#244-291">Source</a><h4 class="code-header">async fn <a href="#method.scan_matching_table_ids" class="fn">scan_matching_table_ids</a>(
&amp;self,
physical: <a class="type" href="../../table/table/type.TableRef.html" title="type table::table::TableRef">TableRef</a>,
matchers: &amp;[Matcher],
start: <a class="struct" href="https://doc.rust-lang.org/1.98.1/std/time/struct.SystemTime.html" title="struct std::time::SystemTime">SystemTime</a>,
end: <a class="struct" href="https://doc.rust-lang.org/1.98.1/std/time/struct.SystemTime.html" title="struct std::time::SystemTime">SystemTime</a>,
ctx: &amp;<a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../error/type.Result.html" title="type frontend::error::Result">Result</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;TableId&gt;&gt;</h4></section></summary><div class="docblock"><p>Returns the <code>__table_id</code>s of <code>physical</code> carrying a row that matches every
matcher within the time range.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.handle_query_label_values" class="method"><a class="src rightside" href="../../src/frontend/instance/promql.rs.html#295-340">Source</a><h4 class="code-header">pub(crate) async fn <a href="#method.handle_query_label_values" class="fn">handle_query_label_values</a>(
&amp;self,
target: <a class="struct" href="../../auth/permission/struct.PermissionTableTarget.html" title="struct auth::permission::PermissionTableTarget">PermissionTableTarget</a>,
label_name: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>,
matchers: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;Matcher&gt;,
start: <a class="struct" href="https://doc.rust-lang.org/1.98.1/std/time/struct.SystemTime.html" title="struct std::time::SystemTime">SystemTime</a>,
end: <a class="struct" href="https://doc.rust-lang.org/1.98.1/std/time/struct.SystemTime.html" title="struct std::time::SystemTime">SystemTime</a>,
ctx: &amp;<a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../error/type.Result.html" title="type frontend::error::Result">Result</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>&gt;&gt;</h4></section></summary><div class="docblock"><p>Handles label values query request, returns the values.</p>
</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Instance-15" class="impl"><a class="src rightside" href="../../src/frontend/instance.rs.html#157-235">Source</a><a href="#impl-Instance-15" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section></summary><div class="impl-items"><section id="method.frontend_peer_addr" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#158-160">Source</a><h4 class="code-header">pub fn <a href="#method.frontend_peer_addr" class="fn">frontend_peer_addr</a>(&amp;self) -&gt; &amp;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a></h4></section><section id="method.catalog_manager" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#162-164">Source</a><h4 class="code-header">pub fn <a href="#method.catalog_manager" class="fn">catalog_manager</a>(&amp;self) -&gt; &amp;<a class="type" href="../../catalog/type.CatalogManagerRef.html" title="type catalog::CatalogManagerRef">CatalogManagerRef</a></h4></section><section id="method.query_engine" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#166-168">Source</a><h4 class="code-header">pub fn <a href="#method.query_engine" class="fn">query_engine</a>(&amp;self) -&gt; &amp;<a class="type" href="../../query/query_engine/type.QueryEngineRef.html" title="type query::query_engine::QueryEngineRef">QueryEngineRef</a></h4></section><section id="method.plugins" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#170-172">Source</a><h4 class="code-header">pub fn <a href="#method.plugins" class="fn">plugins</a>(&amp;self) -&gt; &amp;Plugins</h4></section><section id="method.check_permission" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#174-185">Source</a><h4 class="code-header">fn <a href="#method.check_permission" class="fn">check_permission</a>(
&amp;self,
ctx: &amp;<a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
req: <a class="enum" href="../../auth/permission/enum.PermissionReq.html" title="enum auth::permission::PermissionReq">PermissionReq</a>&lt;'_&gt;,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.unit.html">()</a>&gt;</h4></section><section id="method.statement_executor" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#187-189">Source</a><h4 class="code-header">pub fn <a href="#method.statement_executor" class="fn">statement_executor</a>(&amp;self) -&gt; &amp;<a class="type" href="../../operator/statement/type.StatementExecutorRef.html" title="type operator::statement::StatementExecutorRef">StatementExecutorRef</a></h4></section><section id="method.table_metadata_manager" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#191-193">Source</a><h4 class="code-header">pub fn <a href="#method.table_metadata_manager" class="fn">table_metadata_manager</a>(&amp;self) -&gt; &amp;<a class="type" href="../../common_meta/key/type.TableMetadataManagerRef.html" title="type common_meta::key::TableMetadataManagerRef">TableMetadataManagerRef</a></h4></section><section id="method.inserter" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#195-197">Source</a><h4 class="code-header">pub fn <a href="#method.inserter" class="fn">inserter</a>(&amp;self) -&gt; &amp;<a class="type" href="../../operator/insert/type.InserterRef.html" title="type operator::insert::InserterRef">InserterRef</a></h4></section><section id="method.process_manager" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#199-201">Source</a><h4 class="code-header">pub fn <a href="#method.process_manager" class="fn">process_manager</a>(&amp;self) -&gt; &amp;<a class="type" href="../../catalog/process_manager/type.ProcessManagerRef.html" title="type catalog::process_manager::ProcessManagerRef">ProcessManagerRef</a></h4></section><details class="toggle method-toggle" open><summary><section id="method.event_recorder" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#204-206">Source</a><h4 class="code-header">pub fn <a href="#method.event_recorder" class="fn">event_recorder</a>(&amp;self) -&gt; EventRecorderRef</h4></section></summary><div class="docblock"><p>Returns the event recorder configured for this frontend instance.</p>
</div></details><section id="method.node_manager" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#208-210">Source</a><h4 class="code-header">pub fn <a href="#method.node_manager" class="fn">node_manager</a>(&amp;self) -&gt; &amp;<a class="type" href="../../common_meta/node_manager/type.NodeManagerRef.html" title="type common_meta::node_manager::NodeManagerRef">NodeManagerRef</a></h4></section><section id="method.partition_manager" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#212-214">Source</a><h4 class="code-header">pub fn <a href="#method.partition_manager" class="fn">partition_manager</a>(&amp;self) -&gt; &amp;<a class="type" href="../../partition/manager/type.PartitionRuleManagerRef.html" title="type partition::manager::PartitionRuleManagerRef">PartitionRuleManagerRef</a></h4></section><section id="method.table_flownode_set_cache" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#216-218">Source</a><h4 class="code-header">pub fn <a href="#method.table_flownode_set_cache" class="fn">table_flownode_set_cache</a>(&amp;self) -&gt; &amp;<a class="type" href="../../common_meta/cache/flow/table_flownode/type.TableFlownodeSetCacheRef.html" title="type common_meta::cache::flow::table_flownode::TableFlownodeSetCacheRef">TableFlownodeSetCacheRef</a></h4></section><section id="method.cache_invalidator" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#220-222">Source</a><h4 class="code-header">pub fn <a href="#method.cache_invalidator" class="fn">cache_invalidator</a>(&amp;self) -&gt; &amp;<a class="type" href="../../common_meta/cache_invalidator/type.CacheInvalidatorRef.html" title="type common_meta::cache_invalidator::CacheInvalidatorRef">CacheInvalidatorRef</a></h4></section><section id="method.procedure_executor" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#224-226">Source</a><h4 class="code-header">pub fn <a href="#method.procedure_executor" class="fn">procedure_executor</a>(&amp;self) -&gt; &amp;<a class="type" href="../../common_meta/procedure_executor/type.ProcedureExecutorRef.html" title="type common_meta::procedure_executor::ProcedureExecutorRef">ProcedureExecutorRef</a></h4></section><section id="method.suspend_state" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#228-230">Source</a><h4 class="code-header">pub fn <a href="#method.suspend_state" class="fn">suspend_state</a>(&amp;self) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;<a class="type" href="https://doc.rust-lang.org/1.98.1/core/sync/atomic/type.AtomicBool.html" title="type core::sync::atomic::AtomicBool">AtomicBool</a>&gt; <a href="#" class="tooltip" data-notable-ty="Arc&lt;AtomicBool&gt;">ⓘ</a></h4></section><section id="method.is_suspended" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#232-234">Source</a><h4 class="code-header">pub(crate) fn <a href="#method.is_suspended" class="fn">is_suspended</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.bool.html">bool</a></h4></section></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Instance-16" class="impl"><a class="src rightside" href="../../src/frontend/instance.rs.html#279-558">Source</a><a href="#impl-Instance-16" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section></summary><div class="impl-items"><section id="method.statement_slow_query_timer" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#280-297">Source</a><h4 class="code-header">fn <a href="#method.statement_slow_query_timer" class="fn">statement_slow_query_timer</a>(
&amp;self,
stmt: &amp;<a class="enum" href="../../sql/statements/statement/enum.Statement.html" title="enum sql::statements::statement::Statement">Statement</a>,
schema_name: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="../../catalog/process_manager/struct.SlowQueryTimer.html" title="struct catalog::process_manager::SlowQueryTimer">SlowQueryTimer</a>&gt;</h4></section><section id="method.query_statement" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#299-347">Source</a><h4 class="code-header">async fn <a href="#method.query_statement" class="fn">query_statement</a>(
&amp;self,
stmt: <a class="enum" href="../../sql/statements/statement/enum.Statement.html" title="enum sql::statements::statement::Statement">Statement</a>,
query_ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../error/type.Result.html" title="type frontend::error::Result">Result</a>&lt;Output&gt;</h4></section><section id="method.exec_statement_with_timeout" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#349-376">Source</a><h4 class="code-header">async fn <a href="#method.exec_statement_with_timeout" class="fn">exec_statement_with_timeout</a>(
&amp;self,
stmt: <a class="enum" href="../../sql/statements/statement/enum.Statement.html" title="enum sql::statements::statement::Statement">Statement</a>,
query_ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
query_interceptor: <a class="enum" href="https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;<a class="type" href="../../servers/interceptor/type.SqlQueryInterceptorRef.html" title="type servers::interceptor::SqlQueryInterceptorRef">SqlQueryInterceptorRef</a>&lt;<a class="enum" href="../error/enum.Error.html" title="enum frontend::error::Error">Error</a>&gt;&gt;,
timeout_recorder: <a class="enum" href="https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="../../catalog/process_manager/struct.SlowQueryRecorder.html" title="struct catalog::process_manager::SlowQueryRecorder">SlowQueryRecorder</a>&gt;,
) -&gt; <a class="type" href="../error/type.Result.html" title="type frontend::error::Result">Result</a>&lt;Output&gt;</h4></section><section id="method.exec_statement" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#378-424">Source</a><h4 class="code-header">async fn <a href="#method.exec_statement" class="fn">exec_statement</a>(
&amp;self,
stmt: <a class="enum" href="../../sql/statements/statement/enum.Statement.html" title="enum sql::statements::statement::Statement">Statement</a>,
query_ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
query_interceptor: <a class="enum" href="https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;<a class="type" href="../../servers/interceptor/type.SqlQueryInterceptorRef.html" title="type servers::interceptor::SqlQueryInterceptorRef">SqlQueryInterceptorRef</a>&lt;<a class="enum" href="../error/enum.Error.html" title="enum frontend::error::Error">Error</a>&gt;&gt;,
) -&gt; <a class="type" href="../error/type.Result.html" title="type frontend::error::Result">Result</a>&lt;Output&gt;</h4></section><section id="method.plan_and_exec_sql" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#426-446">Source</a><h4 class="code-header">async fn <a href="#method.plan_and_exec_sql" class="fn">plan_and_exec_sql</a>(
&amp;self,
stmt: <a class="enum" href="../../sql/statements/statement/enum.Statement.html" title="enum sql::statements::statement::Statement">Statement</a>,
query_ctx: &amp;<a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
query_interceptor: <a class="enum" href="https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;<a class="type" href="../../servers/interceptor/type.SqlQueryInterceptorRef.html" title="type servers::interceptor::SqlQueryInterceptorRef">SqlQueryInterceptorRef</a>&lt;<a class="enum" href="../error/enum.Error.html" title="enum frontend::error::Error">Error</a>&gt;&gt;,
) -&gt; <a class="type" href="../error/type.Result.html" title="type frontend::error::Result">Result</a>&lt;Output&gt;</h4></section><section id="method.plan_and_exec_tql" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#448-467">Source</a><h4 class="code-header">async fn <a href="#method.plan_and_exec_tql" class="fn">plan_and_exec_tql</a>(
&amp;self,
query_ctx: &amp;<a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
query_interceptor: <a class="enum" href="https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;<a class="type" href="../../servers/interceptor/type.SqlQueryInterceptorRef.html" title="type servers::interceptor::SqlQueryInterceptorRef">SqlQueryInterceptorRef</a>&lt;<a class="enum" href="../error/enum.Error.html" title="enum frontend::error::Error">Error</a>&gt;&gt;,
tql: <a class="enum" href="../../sql/statements/tql/enum.Tql.html" title="enum sql::statements::tql::Tql">Tql</a>,
) -&gt; <a class="type" href="../error/type.Result.html" title="type frontend::error::Result">Result</a>&lt;Output&gt;</h4></section><section id="method.check_otlp_legacy" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#469-544">Source</a><h4 class="code-header">async fn <a href="#method.check_otlp_legacy" class="fn">check_otlp_legacy</a>(
&amp;self,
names: &amp;[<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>],
ctx: &amp;<a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.bool.html">bool</a>&gt;</h4></section><section id="method.cache_otlp_legacy" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#546-557">Source</a><h4 class="code-header">fn <a href="#method.cache_otlp_legacy" class="fn">cache_otlp_legacy</a>(
&amp;self,
names: &amp;[<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>],
ctx: &amp;<a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
is_legacy: <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.bool.html">bool</a>,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.unit.html">()</a>&gt;</h4></section></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Instance-17" class="impl"><a class="src rightside" href="../../src/frontend/instance.rs.html#692-1205">Source</a><a href="#impl-Instance-17" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section></summary><div class="impl-items"><section id="method.check_sql_permission" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#693-732">Source</a><h4 class="code-header">async fn <a href="#method.check_sql_permission" class="fn">check_sql_permission</a>(
&amp;self,
stmt: &amp;<a class="enum" href="../../sql/statements/statement/enum.Statement.html" title="enum sql::statements::statement::Statement">Statement</a>,
query_ctx: &amp;<a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../error/type.Result.html" title="type frontend::error::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.unit.html">()</a>&gt;</h4></section><section id="method.do_analyze_stream_query_inner" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#735-784">Source</a><h4 class="code-header">async fn <a href="#method.do_analyze_stream_query_inner" class="fn">do_analyze_stream_query_inner</a>(
&amp;self,
query: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
query_ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../error/type.Result.html" title="type frontend::error::Result">Result</a>&lt;Output&gt;</h4></section><section id="method.batch_create_logical_tables" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#786-876">Source</a><h4 class="code-header">async fn <a href="#method.batch_create_logical_tables" class="fn">batch_create_logical_tables</a>(
&amp;self,
query: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
query_ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../error/type.Result.html" title="type frontend::error::Result">Result</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;Output&gt;&gt;</h4></section><section id="method.do_query_inner" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#879-934">Source</a><h4 class="code-header">async fn <a href="#method.do_query_inner" class="fn">do_query_inner</a>(
&amp;self,
query: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
query_ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="type" href="../error/type.Result.html" title="type frontend::error::Result">Result</a>&lt;Output&gt;&gt; <a href="#" class="tooltip" data-notable-ty="Vec&lt;Result&lt;Output&gt;&gt;">ⓘ</a></h4></section><section id="method.exec_plan" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#936-941">Source</a><h4 class="code-header">async fn <a href="#method.exec_plan" class="fn">exec_plan</a>(
&amp;self,
plan: LogicalPlan,
query_ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../error/type.Result.html" title="type frontend::error::Result">Result</a>&lt;Output&gt;</h4></section><section id="method.exec_plan_with_timeout" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#943-965">Source</a><h4 class="code-header">async fn <a href="#method.exec_plan_with_timeout" class="fn">exec_plan_with_timeout</a>(
&amp;self,
plan: LogicalPlan,
query_ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
timeout_recorder: <a class="enum" href="https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="../../catalog/process_manager/struct.SlowQueryRecorder.html" title="struct catalog::process_manager::SlowQueryRecorder">SlowQueryRecorder</a>&gt;,
) -&gt; <a class="type" href="../error/type.Result.html" title="type frontend::error::Result">Result</a>&lt;Output&gt;</h4></section><section id="method.do_exec_plan_inner" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#967-1056">Source</a><h4 class="code-header">async fn <a href="#method.do_exec_plan_inner" class="fn">do_exec_plan_inner</a>(
&amp;self,
plan: LogicalPlan,
stmt: <a class="enum" href="https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="enum" href="../../sql/statements/statement/enum.Statement.html" title="enum sql::statements::statement::Statement">Statement</a>&gt;,
query_ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../error/type.Result.html" title="type frontend::error::Result">Result</a>&lt;Output&gt;</h4></section><section id="method.do_promql_query_inner" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#1059-1075">Source</a><h4 class="code-header">async fn <a href="#method.do_promql_query_inner" class="fn">do_promql_query_inner</a>(
&amp;self,
query: &amp;<a class="struct" href="../../query/parser/struct.PromQuery.html" title="struct query::parser::PromQuery">PromQuery</a>,
query_ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="type" href="../error/type.Result.html" title="type frontend::error::Result">Result</a>&lt;Output&gt;&gt; <a href="#" class="tooltip" data-notable-ty="Vec&lt;Result&lt;Output&gt;&gt;">ⓘ</a></h4></section><details class="toggle method-toggle" open><summary><section id="method.show_statement_dataframe" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#1080-1128">Source</a><h4 class="code-header">fn <a href="#method.show_statement_dataframe" class="fn">show_statement_dataframe</a>&lt;'a&gt;(
&amp;'a self,
stmt: &amp;'a <a class="enum" href="../../sql/statements/statement/enum.Statement.html" title="enum sql::statements::statement::Statement">Statement</a>,
query_ctx: &amp;'a <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="enum" href="https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="type" href="../../query/error/type.Result.html" title="type query::error::Result">Result</a>&lt;DataFrame&gt;&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'a&gt;&gt;</h4></section></summary><div class="docblock"><p>Builds the [<code>DataFrame</code>] for an information-schema-backed <code>SHOW</code>
statement; <code>None</code> for other statements. The future is boxed to keep
<code>do_describe_inner</code>’s state machine small.</p>
</div></details><section id="method.do_describe_inner" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#1130-1197">Source</a><h4 class="code-header">async fn <a href="#method.do_describe_inner" class="fn">do_describe_inner</a>(
&amp;self,
stmt: <a class="enum" href="../../sql/statements/statement/enum.Statement.html" title="enum sql::statements::statement::Statement">Statement</a>,
query_ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../error/type.Result.html" title="type frontend::error::Result">Result</a>&lt;<a class="enum" href="https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="../../query/query_engine/struct.DescribeResult.html" title="struct query::query_engine::DescribeResult">DescribeResult</a>&gt;&gt;</h4></section><section id="method.is_valid_schema_inner" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#1199-1204">Source</a><h4 class="code-header">async fn <a href="#method.is_valid_schema_inner" class="fn">is_valid_schema_inner</a>(
&amp;self,
catalog: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
schema: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
) -&gt; <a class="type" href="../error/type.Result.html" title="type frontend::error::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.bool.html">bool</a>&gt;</h4></section></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Instance-18" class="impl"><a class="src rightside" href="../../src/frontend/instance.rs.html#1310-1439">Source</a><a href="#impl-Instance-18" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section></summary><div class="impl-items"><section id="method.check_prom_query_privilege" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#1311-1321">Source</a><h4 class="code-header">fn <a href="#method.check_prom_query_privilege" class="fn">check_prom_query_privilege</a>(&amp;self, query_ctx: &amp;<a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.unit.html">()</a>&gt;</h4></section><section id="method.prom_expr_permission_targets" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#1323-1343">Source</a><h4 class="code-header">fn <a href="#method.prom_expr_permission_targets" class="fn">prom_expr_permission_targets</a>(
&amp;self,
expr: &amp;Expr,
query_ctx: &amp;<a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">Result</a>&lt;<a class="enum" href="https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="../../auth/permission/struct.PermissionTableTarget.html" title="struct auth::permission::PermissionTableTarget">PermissionTableTarget</a>&gt;&gt;&gt;</h4></section><section id="method.is_physical_query_permission_target" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#1345-1361">Source</a><h4 class="code-header">async fn <a href="#method.is_physical_query_permission_target" class="fn">is_physical_query_permission_target</a>(
&amp;self,
target: &amp;<a class="struct" href="../../auth/permission/struct.PermissionTableTarget.html" title="struct auth::permission::PermissionTableTarget">PermissionTableTarget</a>,
query_ctx: &amp;<a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.bool.html">bool</a>&gt;</h4></section><section id="method.resolve_query_permission_targets" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#1363-1409">Source</a><h4 class="code-header">async fn <a href="#method.resolve_query_permission_targets" class="fn">resolve_query_permission_targets</a>(
&amp;self,
targets: <a class="enum" href="../../auth/permission/enum.PermissionTableTargets.html" title="enum auth::permission::PermissionTableTargets">PermissionTableTargets</a>,
query_ctx: &amp;<a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">Result</a>&lt;<a class="enum" href="../../auth/permission/enum.PermissionTableTargets.html" title="enum auth::permission::PermissionTableTargets">PermissionTableTargets</a>&gt;</h4></section><section id="method.prom_queries_permission_targets" class="method"><a class="src rightside" href="../../src/frontend/instance.rs.html#1411-1438">Source</a><h4 class="code-header">fn <a href="#method.prom_queries_permission_targets" class="fn">prom_queries_permission_targets</a>(
&amp;self,
queries: &amp;[<a class="struct" href="../../servers/prometheus_handler/struct.ParsedPromQuery.html" title="struct servers::prometheus_handler::ParsedPromQuery">ParsedPromQuery</a>],
query_ctx: &amp;<a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">Result</a>&lt;<a class="enum" href="../../auth/permission/enum.PermissionTableTargets.html" title="enum auth::permission::PermissionTableTargets">PermissionTableTargets</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-Clone-for-Instance" class="impl"><a class="src rightside" href="../../src/frontend/instance.rs.html#127">Source</a><a href="#impl-Clone-for-Instance" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance.rs.html#127">Source</a><a href="#method.clone" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.98.1/core/clone/trait.Clone.html#tymethod.clone" class="fn">clone</a>(&amp;self) -&gt; <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h4></section></summary><div class='docblock'>Returns a duplicate of the value. <a href="https://doc.rust-lang.org/1.98.1/core/clone/trait.Clone.html#tymethod.clone">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_from" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0, const unstable">1.0.0 (const: <a href="https://github.com/rust-lang/rust/issues/142757" title="Tracking issue for const_clone">unstable</a>)</span> · <a class="src" href="https://doc.rust-lang.org/1.98.1/src/core/clone.rs.html#245-247">Source</a></span><a href="#method.clone_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.98.1/core/clone/trait.Clone.html#method.clone_from" class="fn">clone_from</a>(&amp;mut self, source: &amp;Self)</h4></section></summary><div class='docblock'>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/1.98.1/core/clone/trait.Clone.html#method.clone_from">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-DashboardHandler-for-Instance" class="impl"><a class="src rightside" href="../../src/frontend/instance/dashboard.rs.html#395-415">Source</a><a href="#impl-DashboardHandler-for-Instance" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="../../servers/query_handler/trait.DashboardHandler.html" title="trait servers::query_handler::DashboardHandler">DashboardHandler</a> for <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section></summary><div class="impl-items"><section id="method.save" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance/dashboard.rs.html#396-404">Source</a><a href="#method.save" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/trait.DashboardHandler.html#tymethod.save" class="fn">save</a>&lt;'life0, 'life1, 'life2, 'async_trait&gt;(
&amp;'life0 self,
name: &amp;'life1 <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
definition: &amp;'life2 <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.unit.html">()</a>&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,</div></h4></section><section id="method.list" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance/dashboard.rs.html#406-409">Source</a><a href="#method.list" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/trait.DashboardHandler.html#tymethod.list" class="fn">list</a>&lt;'life0, 'async_trait&gt;(
&amp;'life0 self,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">Result</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="../../servers/query_handler/struct.DashboardDefinition.html" title="struct servers::query_handler::DashboardDefinition">DashboardDefinition</a>&gt;&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,</div></h4></section><section id="method.delete" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance/dashboard.rs.html#411-414">Source</a><a href="#method.delete" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/trait.DashboardHandler.html#tymethod.delete" class="fn">delete</a>&lt;'life0, 'life1, 'async_trait&gt;(
&amp;'life0 self,
name: &amp;'life1 <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.unit.html">()</a>&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,</div></h4></section></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-GrpcQueryHandler-for-Instance" class="impl"><a class="src rightside" href="../../src/frontend/instance/grpc.rs.html#63-306">Source</a><a href="#impl-GrpcQueryHandler-for-Instance" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="../../servers/query_handler/grpc/trait.GrpcQueryHandler.html" title="trait servers::query_handler::grpc::GrpcQueryHandler">GrpcQueryHandler</a> for <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section></summary><div class="impl-items"><section id="method.do_query" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance/grpc.rs.html#64-290">Source</a><a href="#method.do_query" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/grpc/trait.GrpcQueryHandler.html#tymethod.do_query" class="fn">do_query</a>&lt;'life0, 'async_trait&gt;(
&amp;'life0 self,
request: Request,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">Result</a>&lt;Output&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,</div></h4></section><section id="method.handle_put_record_batch_stream" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance/grpc.rs.html#292-305">Source</a><a href="#method.handle_put_record_batch_stream" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/grpc/trait.GrpcQueryHandler.html#tymethod.handle_put_record_batch_stream" class="fn">handle_put_record_batch_stream</a>(
&amp;self,
stream: <a class="struct" href="../../servers/grpc/flight/struct.PutRecordBatchRequestStream.html" title="struct servers::grpc::flight::PutRecordBatchRequestStream">PutRecordBatchRequestStream</a>,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn Stream&lt;Item = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">Result</a>&lt;DoPutResponse&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>&gt;&gt;</h4></section></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-InfluxdbLineProtocolHandler-for-Instance" class="impl"><a class="src rightside" href="../../src/frontend/instance/influxdb.rs.html#54-99">Source</a><a href="#impl-InfluxdbLineProtocolHandler-for-Instance" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="../../servers/query_handler/trait.InfluxdbLineProtocolHandler.html" title="trait servers::query_handler::InfluxdbLineProtocolHandler">InfluxdbLineProtocolHandler</a> for <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section></summary><div class="impl-items"><section id="method.exec" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance/influxdb.rs.html#55-98">Source</a><a href="#method.exec" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/trait.InfluxdbLineProtocolHandler.html#tymethod.exec" class="fn">exec</a>&lt;'life0, 'async_trait&gt;(
&amp;'life0 self,
request: <a class="struct" href="../../servers/influxdb/struct.InfluxdbRequest.html" title="struct servers::influxdb::InfluxdbRequest">InfluxdbRequest</a>,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">Result</a>&lt;Output&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,</div></h4></section></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-JaegerQueryHandler-for-Instance" class="impl"><a class="src rightside" href="../../src/frontend/instance/jaeger.rs.html#81-328">Source</a><a href="#impl-JaegerQueryHandler-for-Instance" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="../../servers/query_handler/trait.JaegerQueryHandler.html" title="trait servers::query_handler::JaegerQueryHandler">JaegerQueryHandler</a> for <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.get_services" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance/jaeger.rs.html#82-97">Source</a><a href="#method.get_services" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/trait.JaegerQueryHandler.html#tymethod.get_services" class="fn">get_services</a>&lt;'life0, 'async_trait&gt;(
&amp;'life0 self,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;Output&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,</div></h4></section></summary><div class='docblock'>Get trace services. It’s used for <code>/api/services</code> API.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_operations" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance/jaeger.rs.html#99-145">Source</a><a href="#method.get_operations" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/trait.JaegerQueryHandler.html#tymethod.get_operations" class="fn">get_operations</a>&lt;'life0, 'life1, 'life2, 'async_trait&gt;(
&amp;'life0 self,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
service_name: &amp;'life1 <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
span_kind: <a class="enum" href="https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;'life2 <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>&gt;,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;Output&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,</div></h4></section></summary><div class='docblock'>Get Jaeger operations. It’s used for <code>/api/operations</code> and <code>/api/services/{service_name}/operations</code> API.</div></details><details class="toggle method-toggle" open><summary><section id="method.get_trace" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance/jaeger.rs.html#147-194">Source</a><a href="#method.get_trace" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/trait.JaegerQueryHandler.html#tymethod.get_trace" class="fn">get_trace</a>&lt;'life0, 'life1, 'async_trait&gt;(
&amp;'life0 self,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
trace_id: &amp;'life1 <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
start_time: <a class="enum" href="https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.i64.html">i64</a>&gt;,
end_time: <a class="enum" href="https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.i64.html">i64</a>&gt;,
limit: <a class="enum" href="https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.usize.html">usize</a>&gt;,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;Output&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,</div></h4></section></summary><div class='docblock'>Retrieves a trace by its unique identifier. <a href="../../servers/query_handler/trait.JaegerQueryHandler.html#tymethod.get_trace">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_traces" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance/jaeger.rs.html#196-327">Source</a><a href="#method.find_traces" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/trait.JaegerQueryHandler.html#tymethod.find_traces" class="fn">find_traces</a>&lt;'life0, 'async_trait&gt;(
&amp;'life0 self,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
query_params: <a class="struct" href="../../servers/http/jaeger/struct.QueryTraceParams.html" title="struct servers::http::jaeger::QueryTraceParams">QueryTraceParams</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;Output&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,</div></h4></section></summary><div class='docblock'>Find traces by query params. It’s used for <code>/api/traces</code> API.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-LogQueryHandler-for-Instance" class="impl"><a class="src rightside" href="../../src/frontend/instance/logs.rs.html#32-79">Source</a><a href="#impl-LogQueryHandler-for-Instance" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="../../servers/query_handler/trait.LogQueryHandler.html" title="trait servers::query_handler::LogQueryHandler">LogQueryHandler</a> for <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.query" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance/logs.rs.html#33-74">Source</a><a href="#method.query" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/trait.LogQueryHandler.html#tymethod.query" class="fn">query</a>&lt;'life0, 'async_trait&gt;(
&amp;'life0 self,
request: <a class="struct" href="../../log_query/log_query/struct.LogQuery.html" title="struct log_query::log_query::LogQuery">LogQuery</a>,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;Output&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,</div></h4></section></summary><div class='docblock'>Execute a log query.</div></details><details class="toggle method-toggle" open><summary><section id="method.catalog_manager-1" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance/logs.rs.html#76-78">Source</a><a href="#method.catalog_manager-1" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/trait.LogQueryHandler.html#tymethod.catalog_manager" class="fn">catalog_manager</a>(
&amp;self,
_ctx: &amp;<a class="struct" href="../../session/context/struct.QueryContext.html" title="struct session::context::QueryContext">QueryContext</a>,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;&amp;dyn <a class="trait" href="../../catalog/trait.CatalogManager.html" title="trait catalog::CatalogManager">CatalogManager</a>&gt;</h4></section></summary><div class='docblock'>Get catalog manager.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-OpenTelemetryProtocolHandler-for-Instance" class="impl"><a class="src rightside" href="../../src/frontend/instance/otlp.rs.html#92-318">Source</a><a href="#impl-OpenTelemetryProtocolHandler-for-Instance" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="../../servers/query_handler/trait.OpenTelemetryProtocolHandler.html" title="trait servers::query_handler::OpenTelemetryProtocolHandler">OpenTelemetryProtocolHandler</a> for <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.metrics" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance/otlp.rs.html#93">Source</a><a href="#method.metrics" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/trait.OpenTelemetryProtocolHandler.html#tymethod.metrics" class="fn">metrics</a>&lt;'life0, 'async_trait&gt;(
&amp;'life0 self,
request: ExportMetricsServiceRequest,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="struct" href="../../servers/query_handler/struct.MetricsIngestOutcome.html" title="struct servers::query_handler::MetricsIngestOutcome">MetricsIngestOutcome</a>&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,</div></h4></section></summary><div class='docblock'>Handling opentelemetry metrics request</div></details><details class="toggle method-toggle" open><summary><section id="method.traces" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance/otlp.rs.html#210">Source</a><a href="#method.traces" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/trait.OpenTelemetryProtocolHandler.html#tymethod.traces" class="fn">traces</a>&lt;'life0, 'async_trait&gt;(
&amp;'life0 self,
_pipeline_handler: <a class="type" href="../../servers/query_handler/type.PipelineHandlerRef.html" title="type servers::query_handler::PipelineHandlerRef">PipelineHandlerRef</a>,
request: ExportTraceServiceRequest,
pipeline: <a class="enum" href="../../pipeline/manager/enum.PipelineWay.html" title="enum pipeline::manager::PipelineWay">PipelineWay</a>,
_pipeline_params: <a class="struct" href="../../pipeline/etl/transform/transformer/greptime/struct.GreptimePipelineParams.html" title="struct pipeline::etl::transform::transformer::greptime::GreptimePipelineParams">GreptimePipelineParams</a>,
table_name: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="struct" href="../../servers/query_handler/struct.TraceIngestOutcome.html" title="struct servers::query_handler::TraceIngestOutcome">TraceIngestOutcome</a>&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,</div></h4></section></summary><div class='docblock'>Handling opentelemetry traces request</div></details><section id="method.logs" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance/otlp.rs.html#248">Source</a><a href="#method.logs" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/trait.OpenTelemetryProtocolHandler.html#tymethod.logs" class="fn">logs</a>&lt;'life0, 'async_trait&gt;(
&amp;'life0 self,
pipeline_handler: <a class="type" href="../../servers/query_handler/type.PipelineHandlerRef.html" title="type servers::query_handler::PipelineHandlerRef">PipelineHandlerRef</a>,
request: ExportLogsServiceRequest,
pipeline: <a class="enum" href="../../pipeline/manager/enum.PipelineWay.html" title="enum pipeline::manager::PipelineWay">PipelineWay</a>,
pipeline_params: <a class="struct" href="../../pipeline/etl/transform/transformer/greptime/struct.GreptimePipelineParams.html" title="struct pipeline::etl::transform::transformer::greptime::GreptimePipelineParams">GreptimePipelineParams</a>,
table_name: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;Output&gt;&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,</div></h4></section></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-OpentsdbProtocolHandler-for-Instance" class="impl"><a class="src rightside" href="../../src/frontend/instance/opentsdb.rs.html#46-74">Source</a><a href="#impl-OpentsdbProtocolHandler-for-Instance" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="../../servers/query_handler/trait.OpentsdbProtocolHandler.html" title="trait servers::query_handler::OpentsdbProtocolHandler">OpentsdbProtocolHandler</a> for <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.preflight" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance/opentsdb.rs.html#47-55">Source</a><a href="#method.preflight" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/trait.OpentsdbProtocolHandler.html#tymethod.preflight" class="fn">preflight</a>&lt;'life0, 'life1, 'async_trait&gt;(
&amp;'life0 self,
data_points: &amp;'life1 [<a class="struct" href="../../servers/opentsdb/codec/struct.DataPoint.html" title="struct servers::opentsdb::codec::DataPoint">DataPoint</a>],
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.unit.html">()</a>&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,</div></h4></section></summary><div class='docblock'>Checks all points in one external request before per-point debug execution.</div></details><section id="method.exec-1" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance/opentsdb.rs.html#57">Source</a><a href="#method.exec-1" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/trait.OpentsdbProtocolHandler.html#tymethod.exec" class="fn">exec</a>&lt;'life0, 'async_trait&gt;(
&amp;'life0 self,
data_points: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="../../servers/opentsdb/codec/struct.DataPoint.html" title="struct servers::opentsdb::codec::DataPoint">DataPoint</a>&gt;,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.usize.html">usize</a>&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,</div></h4></section><details class="toggle method-toggle" open><summary><section id="method.exec_batch" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance/opentsdb.rs.html#66">Source</a><a href="#method.exec_batch" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/trait.OpentsdbProtocolHandler.html#method.exec_batch" class="fn">exec_batch</a>&lt;'life0, 'async_trait&gt;(
&amp;'life0 self,
data_points: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="../../servers/opentsdb/codec/struct.DataPoint.html" title="struct servers::opentsdb::codec::DataPoint">DataPoint</a>&gt;,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.usize.html">usize</a>&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,</div></h4></section></summary><div class='docblock'>Executes an ordinary HTTP put with optional batching. Debug callers
retain <a href="../../servers/query_handler/trait.OpentsdbProtocolHandler.html#tymethod.exec" title="method servers::query_handler::OpentsdbProtocolHandler::exec"><code>Self::exec</code></a>; the frontend clears HTTP batching selection
there so diagnostic requests preserve direct, per-point error attribution.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PendingRowsSchemaAlterer-for-Instance" class="impl"><a class="src rightside" href="../../src/frontend/instance/prom_store.rs.html#284-444">Source</a><a href="#impl-PendingRowsSchemaAlterer-for-Instance" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="../../servers/batcher/logical_table/tables/trait.PendingRowsSchemaAlterer.html" title="trait servers::batcher::logical_table::tables::PendingRowsSchemaAlterer">PendingRowsSchemaAlterer</a> for <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.create_tables_if_missing_batch" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance/prom_store.rs.html#285-388">Source</a><a href="#method.create_tables_if_missing_batch" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/batcher/logical_table/tables/trait.PendingRowsSchemaAlterer.html#tymethod.create_tables_if_missing_batch" class="fn">create_tables_if_missing_batch</a>&lt;'life0, 'life1, 'life2, 'life3, 'life4, 'life5, 'async_trait&gt;(
&amp;'life0 self,
catalog: &amp;'life1 <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
schema: &amp;'life2 <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
tables: &amp;'life3 [(&amp;'life4 <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>, &amp;'life5 [ColumnSchema])],
with_metric_engine: <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.bool.html">bool</a>,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.unit.html">()</a>&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
'life5: 'async_trait,</div></h4></section></summary><div class='docblock'>Batch-create multiple logical tables that are missing.
Each entry is <code>(table_name, request_schema)</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.add_missing_prom_tag_columns_batch" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance/prom_store.rs.html#390-443">Source</a><a href="#method.add_missing_prom_tag_columns_batch" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/batcher/logical_table/tables/trait.PendingRowsSchemaAlterer.html#tymethod.add_missing_prom_tag_columns_batch" class="fn">add_missing_prom_tag_columns_batch</a>&lt;'life0, 'life1, 'life2, 'life3, 'life4, 'life5, 'async_trait&gt;(
&amp;'life0 self,
catalog: &amp;'life1 <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
schema: &amp;'life2 <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
tables: &amp;'life3 [(&amp;'life4 <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>, &amp;'life5 [<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>])],
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.unit.html">()</a>&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
'life5: 'async_trait,</div></h4></section></summary><div class='docblock'>Batch-alter multiple logical tables to add missing tag columns.
Each entry is <code>(table_name, missing_column_names)</code>.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PipelineHandler-for-Instance" class="impl"><a class="src rightside" href="../../src/frontend/instance/log_handler.rs.html#65-166">Source</a><a href="#impl-PipelineHandler-for-Instance" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="../../servers/query_handler/trait.PipelineHandler.html" title="trait servers::query_handler::PipelineHandler">PipelineHandler</a> for <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section></summary><div class="impl-items"><section id="method.insert" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance/log_handler.rs.html#66-69">Source</a><a href="#method.insert" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/trait.PipelineHandler.html#tymethod.insert" class="fn">insert</a>&lt;'life0, 'async_trait&gt;(
&amp;'life0 self,
log: RowInsertRequests,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;Output&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,</div></h4></section><details class="toggle method-toggle" open><summary><section id="method.insert_all" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance/log_handler.rs.html#71-93">Source</a><a href="#method.insert_all" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/trait.PipelineHandler.html#tymethod.insert_all" class="fn">insert_all</a>&lt;'life0, 'async_trait&gt;(
&amp;'life0 self,
inputs: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;(<a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>, RowInsertRequests)&gt;,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;Output&gt;&gt;&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,</div></h4></section></summary><div class='docblock'>Checks every batch before inserting any of them.</div></details><section id="method.check_pipeline_query_permission" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance/log_handler.rs.html#95-97">Source</a><a href="#method.check_pipeline_query_permission" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/trait.PipelineHandler.html#tymethod.check_pipeline_query_permission" class="fn">check_pipeline_query_permission</a>(
&amp;self,
query_ctx: &amp;<a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.unit.html">()</a>&gt;</h4></section><details class="toggle method-toggle" open><summary><section id="method.get_pipeline" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance/log_handler.rs.html#99-109">Source</a><a href="#method.get_pipeline" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/trait.PipelineHandler.html#tymethod.get_pipeline" class="fn">get_pipeline</a>&lt;'life0, 'life1, 'async_trait&gt;(
&amp;'life0 self,
name: &amp;'life1 <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
version: <a class="type" href="../../pipeline/manager/type.PipelineVersion.html" title="type pipeline::manager::PipelineVersion">PipelineVersion</a>,
query_ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;<a class="struct" href="../../pipeline/etl/struct.Pipeline.html" title="struct pipeline::etl::Pipeline">Pipeline</a>&gt;&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,</div></h4></section></summary><div class='docblock'>Loads a compiled pipeline for execution. <a href="../../servers/query_handler/trait.PipelineHandler.html#tymethod.get_pipeline">Read more</a></div></details><section id="method.insert_pipeline" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance/log_handler.rs.html#111-123">Source</a><a href="#method.insert_pipeline" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/trait.PipelineHandler.html#tymethod.insert_pipeline" class="fn">insert_pipeline</a>&lt;'life0, 'life1, 'life2, 'life3, 'async_trait&gt;(
&amp;'life0 self,
name: &amp;'life1 <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
content_type: &amp;'life2 <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
pipeline: &amp;'life3 <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
query_ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="type" href="../../pipeline/manager/type.PipelineInfo.html" title="type pipeline::manager::PipelineInfo">PipelineInfo</a>&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,</div></h4></section><section id="method.delete_pipeline" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance/log_handler.rs.html#125-136">Source</a><a href="#method.delete_pipeline" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/trait.PipelineHandler.html#tymethod.delete_pipeline" class="fn">delete_pipeline</a>&lt;'life0, 'life1, 'async_trait&gt;(
&amp;'life0 self,
name: &amp;'life1 <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
version: <a class="type" href="../../pipeline/manager/type.PipelineVersion.html" title="type pipeline::manager::PipelineVersion">PipelineVersion</a>,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="enum" href="https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.unit.html">()</a>&gt;&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,</div></h4></section><section id="method.get_table" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance/log_handler.rs.html#138-148">Source</a><a href="#method.get_table" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/trait.PipelineHandler.html#tymethod.get_table" class="fn">get_table</a>&lt;'life0, 'life1, 'life2, 'async_trait&gt;(
&amp;'life0 self,
table: &amp;'life1 <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
query_ctx: &amp;'life2 <a class="struct" href="../../session/context/struct.QueryContext.html" title="struct session::context::QueryContext">QueryContext</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="enum" href="https://doc.rust-lang.org/1.98.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="enum" href="https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;<a class="struct" href="../../table/table/struct.Table.html" title="struct table::table::Table">Table</a>&gt;&gt;, <a class="enum" href="../../catalog/error/enum.Error.html" title="enum catalog::error::Error">Error</a>&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,</div></h4></section><section id="method.build_pipeline" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance/log_handler.rs.html#150-152">Source</a><a href="#method.build_pipeline" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/trait.PipelineHandler.html#tymethod.build_pipeline" class="fn">build_pipeline</a>(&amp;self, pipeline: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>) -&gt; <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="struct" href="../../pipeline/etl/struct.Pipeline.html" title="struct pipeline::etl::Pipeline">Pipeline</a>&gt;</h4></section><details class="toggle method-toggle" open><summary><section id="method.get_pipeline_str" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance/log_handler.rs.html#154-165">Source</a><a href="#method.get_pipeline_str" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/trait.PipelineHandler.html#tymethod.get_pipeline_str" class="fn">get_pipeline_str</a>&lt;'life0, 'life1, 'async_trait&gt;(
&amp;'life0 self,
name: &amp;'life1 <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
version: <a class="type" href="../../pipeline/manager/type.PipelineVersion.html" title="type pipeline::manager::PipelineVersion">PipelineVersion</a>,
query_ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;(<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>, TimestampNanosecond)&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,</div></h4></section></summary><div class='docblock'>Get a original pipeline by name.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PromStoreProtocolHandler-for-Instance" class="impl"><a class="src rightside" href="../../src/frontend/instance/prom_store.rs.html#483-656">Source</a><a href="#impl-PromStoreProtocolHandler-for-Instance" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="../../servers/query_handler/trait.PromStoreProtocolHandler.html" title="trait servers::query_handler::PromStoreProtocolHandler">PromStoreProtocolHandler</a> for <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.pre_write" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance/prom_store.rs.html#484-501">Source</a><a href="#method.pre_write" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/trait.PromStoreProtocolHandler.html#tymethod.pre_write" class="fn">pre_write</a>&lt;'life0, 'life1, 'async_trait&gt;(
&amp;'life0 self,
request: &amp;'life1 RowInsertRequests,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.unit.html">()</a>&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,</div></h4></section></summary><div class='docblock'>Runs pre-write checks/hooks for prometheus remote write requests.</div></details><details class="toggle method-toggle" open><summary><section id="method.write_prepared" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance/prom_store.rs.html#503-511">Source</a><a href="#method.write_prepared" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/trait.PromStoreProtocolHandler.html#tymethod.write_prepared" class="fn">write_prepared</a>&lt;'life0, 'async_trait&gt;(
&amp;'life0 self,
request: RowInsertRequests,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
with_metric_engine: <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.bool.html">bool</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;Output&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,</div></h4></section></summary><div class='docblock'>Writes one batch after <a href="../../servers/query_handler/trait.PromStoreProtocolHandler.html#tymethod.pre_write" title="method servers::query_handler::PromStoreProtocolHandler::pre_write"><code>Self::pre_write</code></a> has succeeded for the entire request.</div></details><details class="toggle method-toggle" open><summary><section id="method.write" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance/prom_store.rs.html#513-521">Source</a><a href="#method.write" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/trait.PromStoreProtocolHandler.html#tymethod.write" class="fn">write</a>&lt;'life0, 'async_trait&gt;(
&amp;'life0 self,
request: RowInsertRequests,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
with_metric_engine: <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.bool.html">bool</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;Output&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,</div></h4></section></summary><div class='docblock'>Handling prometheus remote write requests</div></details><details class="toggle method-toggle" open><summary><section id="method.write_all" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance/prom_store.rs.html#523-548">Source</a><a href="#method.write_all" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/trait.PromStoreProtocolHandler.html#tymethod.write_all" class="fn">write_all</a>&lt;'life0, 'async_trait&gt;(
&amp;'life0 self,
requests: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;(<a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>, RowInsertRequests)&gt;,
with_metric_engine: <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.bool.html">bool</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;Output&gt;&gt;&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,</div></h4></section></summary><div class='docblock'>Checks every batch before writing any of them.</div></details><details class="toggle method-toggle" open><summary><section id="method.read" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance/prom_store.rs.html#550">Source</a><a href="#method.read" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/trait.PromStoreProtocolHandler.html#tymethod.read" class="fn">read</a>&lt;'life0, 'async_trait&gt;(
&amp;'life0 self,
request: ReadRequest,
ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">ServerResult</a>&lt;<a class="struct" href="../../servers/query_handler/struct.PromStoreResponse.html" title="struct servers::query_handler::PromStoreResponse">PromStoreResponse</a>&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,</div></h4></section></summary><div class='docblock'>Handling prometheus remote read requests</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PrometheusHandler-for-Instance" class="impl"><a class="src rightside" href="../../src/frontend/instance.rs.html#1442-1691">Source</a><a href="#impl-PrometheusHandler-for-Instance" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="../../servers/prometheus_handler/trait.PrometheusHandler.html" title="trait servers::prometheus_handler::PrometheusHandler">PrometheusHandler</a> for <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section></summary><div class="impl-items"><section id="method.do_query-1" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance.rs.html#1443">Source</a><a href="#method.do_query-1" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/prometheus_handler/trait.PrometheusHandler.html#tymethod.do_query" class="fn">do_query</a>&lt;'life0, 'life1, 'async_trait&gt;(
&amp;'life0 self,
query: &amp;'life1 <a class="struct" href="../../query/parser/struct.PromQuery.html" title="struct query::parser::PromQuery">PromQuery</a>,
query_ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">Result</a>&lt;Output&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,</div></h4></section><details class="toggle method-toggle" open><summary><section id="method.do_query_parsed" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance.rs.html#1453">Source</a><a href="#method.do_query_parsed" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/prometheus_handler/trait.PrometheusHandler.html#method.do_query_parsed" class="fn">do_query_parsed</a>&lt;'life0, 'async_trait&gt;(
&amp;'life0 self,
query: <a class="struct" href="../../servers/prometheus_handler/struct.ParsedPromQuery.html" title="struct servers::prometheus_handler::ParsedPromQuery">ParsedPromQuery</a>,
query_ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">Result</a>&lt;Output&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,</div></h4></section></summary><div class='docblock'>Executes a query whose statement has already been parsed.</div></details><details class="toggle method-toggle" open><summary><section id="method.check_query_permission" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance.rs.html#1545-1557">Source</a><a href="#method.check_query_permission" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/prometheus_handler/trait.PrometheusHandler.html#tymethod.check_query_permission" class="fn">check_query_permission</a>&lt;'life0, 'life1, 'life2, 'async_trait&gt;(
&amp;'life0 self,
queries: &amp;'life1 [<a class="struct" href="../../query/parser/struct.PromQuery.html" title="struct query::parser::PromQuery">PromQuery</a>],
query_ctx: &amp;'life2 <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.unit.html">()</a>&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,</div></h4></section></summary><div class='docblock'>Checks access to every table referenced by a batch of PromQL queries. <a href="../../servers/prometheus_handler/trait.PrometheusHandler.html#tymethod.check_query_permission">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.check_query_permission_parsed" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance.rs.html#1559-1567">Source</a><a href="#method.check_query_permission_parsed" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/prometheus_handler/trait.PrometheusHandler.html#method.check_query_permission_parsed" class="fn">check_query_permission_parsed</a>&lt;'life0, 'life1, 'life2, 'async_trait&gt;(
&amp;'life0 self,
queries: &amp;'life1 [<a class="struct" href="../../servers/prometheus_handler/struct.ParsedPromQuery.html" title="struct servers::prometheus_handler::ParsedPromQuery">ParsedPromQuery</a>],
query_ctx: &amp;'life2 <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.unit.html">()</a>&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,</div></h4></section></summary><div class='docblock'>Checks access without parsing the queries again.</div></details><details class="toggle method-toggle" open><summary><section id="method.check_query_target_permission" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance.rs.html#1569-1580">Source</a><a href="#method.check_query_target_permission" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/prometheus_handler/trait.PrometheusHandler.html#tymethod.check_query_target_permission" class="fn">check_query_target_permission</a>&lt;'life0, 'life1, 'async_trait&gt;(
&amp;'life0 self,
targets: <a class="enum" href="../../auth/permission/enum.PermissionTableTargets.html" title="enum auth::permission::PermissionTableTargets">PermissionTableTargets</a>,
query_ctx: &amp;'life1 <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.unit.html">()</a>&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,</div></h4></section></summary><div class='docblock'>Checks access to targets resolved by Prometheus metadata APIs.</div></details><details class="toggle method-toggle" open><summary><section id="method.filter_metadata_metric_names" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance.rs.html#1582-1636">Source</a><a href="#method.filter_metadata_metric_names" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/prometheus_handler/trait.PrometheusHandler.html#tymethod.filter_metadata_metric_names" class="fn">filter_metadata_metric_names</a>&lt;'life0, 'life1, 'life2, 'async_trait&gt;(
&amp;'life0 self,
metric_names: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>&gt;,
schema: &amp;'life1 <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
query_ctx: &amp;'life2 <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">Result</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>&gt;&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,</div></h4></section></summary><div class='docblock'>Removes inaccessible metric names from logical-table metadata enumeration results.</div></details><details class="toggle method-toggle" open><summary><section id="method.query_metric_names" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance.rs.html#1638-1648">Source</a><a href="#method.query_metric_names" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/prometheus_handler/trait.PrometheusHandler.html#tymethod.query_metric_names" class="fn">query_metric_names</a>&lt;'life0, 'life1, 'life2, 'async_trait&gt;(
&amp;'life0 self,
matchers: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;Matcher&gt;,
schema: &amp;'life1 <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
ctx: &amp;'life2 <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">Result</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>&gt;&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,</div></h4></section></summary><div class='docblock'>Query metric table names by the <code>__name__</code> matchers.</div></details><details class="toggle method-toggle" open><summary><section id="method.query_metric_names_by_labels" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance.rs.html#1650-1662">Source</a><a href="#method.query_metric_names_by_labels" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/prometheus_handler/trait.PrometheusHandler.html#tymethod.query_metric_names_by_labels" class="fn">query_metric_names_by_labels</a>&lt;'life0, 'life1, 'life2, 'async_trait&gt;(
&amp;'life0 self,
matchers: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;Matcher&gt;,
schema: &amp;'life1 <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
start: <a class="struct" href="https://doc.rust-lang.org/1.98.1/std/time/struct.SystemTime.html" title="struct std::time::SystemTime">SystemTime</a>,
end: <a class="struct" href="https://doc.rust-lang.org/1.98.1/std/time/struct.SystemTime.html" title="struct std::time::SystemTime">SystemTime</a>,
ctx: &amp;'life2 <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">Result</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>&gt;&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,</div></h4></section></summary><div class='docblock'>Query metric table names that carry data matching <code>matchers</code> in the time
range. <code>matchers</code> must hold only ordinary label matchers: <code>__name__</code>
names a table and the database and field matchers name no column, so the
caller resolves all three before calling. <a href="../../servers/prometheus_handler/trait.PrometheusHandler.html#tymethod.query_metric_names_by_labels">Read more</a></div></details><section id="method.query_label_values" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance.rs.html#1664-1686">Source</a><a href="#method.query_label_values" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/prometheus_handler/trait.PrometheusHandler.html#tymethod.query_label_values" class="fn">query_label_values</a>&lt;'life0, 'life1, 'async_trait&gt;(
&amp;'life0 self,
metric: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>,
label_name: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>,
matchers: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;Matcher&gt;,
start: <a class="struct" href="https://doc.rust-lang.org/1.98.1/std/time/struct.SystemTime.html" title="struct std::time::SystemTime">SystemTime</a>,
end: <a class="struct" href="https://doc.rust-lang.org/1.98.1/std/time/struct.SystemTime.html" title="struct std::time::SystemTime">SystemTime</a>,
ctx: &amp;'life1 <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">Result</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>&gt;&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,</div></h4></section><section id="method.catalog_manager-2" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance.rs.html#1688-1690">Source</a><a href="#method.catalog_manager-2" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/prometheus_handler/trait.PrometheusHandler.html#tymethod.catalog_manager" class="fn">catalog_manager</a>(&amp;self) -&gt; <a class="type" href="../../catalog/type.CatalogManagerRef.html" title="type catalog::CatalogManagerRef">CatalogManagerRef</a></h4></section></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-SqlQueryHandler-for-Instance" class="impl"><a class="src rightside" href="../../src/frontend/instance.rs.html#1208-1288">Source</a><a href="#impl-SqlQueryHandler-for-Instance" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="../../servers/query_handler/sql/trait.SqlQueryHandler.html" title="trait servers::query_handler::sql::SqlQueryHandler">SqlQueryHandler</a> for <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.supports_metric_batch_ddl" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance.rs.html#1209-1211">Source</a><a href="#method.supports_metric_batch_ddl" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/sql/trait.SqlQueryHandler.html#method.supports_metric_batch_ddl" class="fn">supports_metric_batch_ddl</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>Whether this handler implements the bounded logical-table DDL operation.</div></details><details class="toggle method-toggle" open><summary><section id="method.create_logical_tables" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance.rs.html#1213-1222">Source</a><a href="#method.create_logical_tables" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/sql/trait.SqlQueryHandler.html#method.create_logical_tables" class="fn">create_logical_tables</a>&lt;'life0, 'life1, 'async_trait&gt;(
&amp;'life0 self,
query: &amp;'life1 <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
query_ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">Result</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;Output&gt;&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,</div></h4></section></summary><div class='docblock'>Validates and authorizes the whole batch before submitting one procedure.</div></details><section id="method.do_query-2" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance.rs.html#1224-1234">Source</a><a href="#method.do_query-2" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/sql/trait.SqlQueryHandler.html#tymethod.do_query" class="fn">do_query</a>&lt;'life0, 'life1, 'async_trait&gt;(
&amp;'life0 self,
query: &amp;'life1 <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
query_ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">Result</a>&lt;Output&gt;&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,</div></h4></section><details class="toggle method-toggle" open><summary><section id="method.do_analyze_stream_query" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance.rs.html#1236-1245">Source</a><a href="#method.do_analyze_stream_query" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/sql/trait.SqlQueryHandler.html#tymethod.do_analyze_stream_query" class="fn">do_analyze_stream_query</a>&lt;'life0, 'life1, 'async_trait&gt;(
&amp;'life0 self,
query: &amp;'life1 <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
query_ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">Result</a>&lt;Output&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,</div></h4></section></summary><div class='docblock'>Executes an HTTP analyze-stream query. <a href="../../servers/query_handler/sql/trait.SqlQueryHandler.html#tymethod.do_analyze_stream_query">Read more</a></div></details><section id="method.do_exec_plan" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance.rs.html#1247-1257">Source</a><a href="#method.do_exec_plan" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/sql/trait.SqlQueryHandler.html#tymethod.do_exec_plan" class="fn">do_exec_plan</a>&lt;'life0, 'async_trait&gt;(
&amp;'life0 self,
plan: LogicalPlan,
stmt: <a class="enum" href="https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="enum" href="../../sql/statements/statement/enum.Statement.html" title="enum sql::statements::statement::Statement">Statement</a>&gt;,
query_ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">Result</a>&lt;Output&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,</div></h4></section><section id="method.do_promql_query" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance.rs.html#1259-1269">Source</a><a href="#method.do_promql_query" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/sql/trait.SqlQueryHandler.html#tymethod.do_promql_query" class="fn">do_promql_query</a>&lt;'life0, 'life1, 'async_trait&gt;(
&amp;'life0 self,
query: &amp;'life1 <a class="struct" href="../../query/parser/struct.PromQuery.html" title="struct query::parser::PromQuery">PromQuery</a>,
query_ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">Result</a>&lt;Output&gt;&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,</div></h4></section><section id="method.do_describe" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance.rs.html#1271-1280">Source</a><a href="#method.do_describe" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/sql/trait.SqlQueryHandler.html#tymethod.do_describe" class="fn">do_describe</a>&lt;'life0, 'async_trait&gt;(
&amp;'life0 self,
stmt: <a class="enum" href="../../sql/statements/statement/enum.Statement.html" title="enum sql::statements::statement::Statement">Statement</a>,
query_ctx: <a class="type" href="../../session/context/type.QueryContextRef.html" title="type session::context::QueryContextRef">QueryContextRef</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">Result</a>&lt;<a class="enum" href="https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="../../query/query_engine/struct.DescribeResult.html" title="struct query::query_engine::DescribeResult">DescribeResult</a>&gt;&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,</div></h4></section><section id="method.is_valid_schema" class="method trait-impl"><a class="src rightside" href="../../src/frontend/instance.rs.html#1282-1287">Source</a><a href="#method.is_valid_schema" class="anchor">§</a><h4 class="code-header">fn <a href="../../servers/query_handler/sql/trait.SqlQueryHandler.html#tymethod.is_valid_schema" class="fn">is_valid_schema</a>&lt;'life0, 'life1, 'life2, 'async_trait&gt;(
&amp;'life0 self,
catalog: &amp;'life1 <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
schema: &amp;'life2 <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a>,
) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>&lt;Output = <a class="type" href="../../servers/error/type.Result.html" title="type servers::error::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.bool.html">bool</a>&gt;&gt; + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'async_trait&gt;&gt;<div class="where">where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,</div></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-RefUnwindSafe-for-Instance" class="impl"><a href="#impl-RefUnwindSafe-for-Instance" class="anchor">§</a><h3 class="code-header">impl !<a class="trait" href="https://doc.rust-lang.org/1.98.1/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section><section id="impl-UnwindSafe-for-Instance" class="impl"><a href="#impl-UnwindSafe-for-Instance" class="anchor">§</a><h3 class="code-header">impl !<a class="trait" href="https://doc.rust-lang.org/1.98.1/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section><section id="impl-Freeze-for-Instance" class="impl"><a href="#impl-Freeze-for-Instance" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Freeze.html" title="trait core::marker::Freeze">Freeze</a> for <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section><section id="impl-Send-for-Instance" class="impl"><a href="#impl-Send-for-Instance" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section><section id="impl-Sync-for-Instance" class="impl"><a href="#impl-Sync-for-Instance" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section><section id="impl-Unpin-for-Instance" class="impl"><a href="#impl-Unpin-for-Instance" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section><section id="impl-UnsafeUnpin-for-Instance" class="impl"><a href="#impl-UnsafeUnpin-for-Instance" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.UnsafeUnpin.html" title="trait core::marker::UnsafeUnpin">UnsafeUnpin</a> for <a class="struct" href="struct.Instance.html" title="struct frontend::instance::Instance">Instance</a></h3></section></div><h2 id="blanket-implementations" class="section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.98.1/src/core/any.rs.html#141">Source</a><a href="#impl-Any-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<div class="where">where
T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.98.1/src/core/any.rs.html#142">Source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.98.1/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&amp;self) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.98.1/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></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/1.98.1/core/any/trait.Any.html" title="trait core::any::Any">Any</a>,</div></h3></section><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-T-2" class="impl"><a href="#impl-Any-for-T-2" 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/1.98.1/core/any/trait.Any.html" title="trait core::any::Any">Any</a>,</div></h3></section></summary><div class="impl-items"><section id="method.into_any" class="method trait-impl"><a href="#method.into_any" class="anchor">§</a><h4 class="code-header">fn <a class="fn">into_any</a>(self: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;T&gt;) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/any/trait.Any.html" title="trait core::any::Any">Any</a>&gt;</h4></section><section id="method.into_any_rc" class="method trait-impl"><a href="#method.into_any_rc" class="anchor">§</a><h4 class="code-header">fn <a class="fn">into_any_rc</a>(self: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/rc/struct.Rc.html" title="struct alloc::rc::Rc">Rc</a>&lt;T&gt;) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/rc/struct.Rc.html" title="struct alloc::rc::Rc">Rc</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/any/trait.Any.html" title="trait core::any::Any">Any</a>&gt;</h4></section><section id="method.type_name" class="method trait-impl"><a href="#method.type_name" class="anchor">§</a><h4 class="code-header">fn <a class="fn">type_name</a>(&amp;self) -&gt; &amp;'static <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.str.html">str</a></h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-AnySync-for-T" class="impl"><a href="#impl-AnySync-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; AnySync for T<div class="where">where
T: Any + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,</div></h3></section></summary><div class="impl-items"><section id="method.into_any_arc" class="method trait-impl"><a href="#method.into_any_arc" class="anchor">§</a><h4 class="code-header">fn <a class="fn">into_any_arc</a>(self: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;T&gt;) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/any/trait.Any.html" title="trait core::any::Any">Any</a> + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>&gt; <a href="#" class="tooltip" data-notable-ty="Arc&lt;dyn Any + Send + Sync&gt;">ⓘ</a></h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.98.1/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/1.98.1/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a>&lt;T&gt; for T<div class="where">where
T: ?<a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.98.1/src/core/borrow.rs.html#214">Source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.98.1/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.reference.html">&amp;T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.98.1/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.98.1/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/1.98.1/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a>&lt;T&gt; for T<div class="where">where
T: ?<a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.98.1/src/core/borrow.rs.html#222">Source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.98.1/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.reference.html">&amp;mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.98.1/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><section id="impl-CloneAny-for-T" class="impl"><a href="#impl-CloneAny-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; CloneAny for T<div class="where">where
T: <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/any/trait.Any.html" title="trait core::any::Any">Any</a> + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h3></section><section id="impl-CloneAnySend-for-T" class="impl"><a href="#impl-CloneAnySend-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; CloneAnySend for T<div class="where">where
T: <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/any/trait.Any.html" title="trait core::any::Any">Any</a> + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h3></section><section id="impl-CloneAnySendSync-for-T" class="impl"><a href="#impl-CloneAnySendSync-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; CloneAnySendSync for T<div class="where">where
T: <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/any/trait.Any.html" title="trait core::any::Any">Any</a> + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h3></section><section id="impl-CloneAnySync-for-T" class="impl"><a href="#impl-CloneAnySync-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; CloneAnySync for T<div class="where">where
T: <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/any/trait.Any.html" title="trait core::any::Any">Any</a> + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h3></section><details class="toggle implementors-toggle"><summary><section id="impl-CloneToUninit-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.98.1/src/core/clone.rs.html#648">Source</a><a href="#impl-CloneToUninit-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/clone/trait.CloneToUninit.html" title="trait core::clone::CloneToUninit">CloneToUninit</a> for T<div class="where">where
T: <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone_to_uninit" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.98.1/src/core/clone.rs.html#650">Source</a><a href="#method.clone_to_uninit" class="anchor">§</a><h4 class="code-header">unsafe fn <a href="https://doc.rust-lang.org/1.98.1/core/clone/trait.CloneToUninit.html#tymethod.clone_to_uninit" class="fn">clone_to_uninit</a>(&amp;self, dest: <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.pointer.html">*mut </a><a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.u8.html">u8</a>)</h4></section></summary><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>clone_to_uninit</code>)</span></div></span><div class='docblock'>Performs copy-assignment from <code>self</code> to <code>dest</code>. <a href="https://doc.rust-lang.org/1.98.1/core/clone/trait.CloneToUninit.html#tymethod.clone_to_uninit">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/1.98.1/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-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/1.98.1/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-Downcast-for-T" class="impl"><a href="#impl-Downcast-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; Downcast for T<div class="where">where
T: <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/any/trait.Any.html" title="trait core::any::Any">Any</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into_any-1" class="method trait-impl"><a href="#method.into_any-1" class="anchor">§</a><h4 class="code-header">fn <a class="fn">into_any</a>(self: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;T&gt;) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/any/trait.Any.html" title="trait core::any::Any">Any</a>&gt;</h4></section></summary><div class='docblock'>Converts <code>Box&lt;dyn Trait&gt;</code> (where <code>Trait: Downcast</code>) to <code>Box&lt;dyn Any&gt;</code>, which can then be
<code>downcast</code> into <code>Box&lt;dyn ConcreteType&gt;</code> where <code>ConcreteType</code> implements <code>Trait</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.into_any_rc-1" class="method trait-impl"><a href="#method.into_any_rc-1" class="anchor">§</a><h4 class="code-header">fn <a class="fn">into_any_rc</a>(self: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/rc/struct.Rc.html" title="struct alloc::rc::Rc">Rc</a>&lt;T&gt;) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/rc/struct.Rc.html" title="struct alloc::rc::Rc">Rc</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/any/trait.Any.html" title="trait core::any::Any">Any</a>&gt;</h4></section></summary><div class='docblock'>Converts <code>Rc&lt;Trait&gt;</code> (where <code>Trait: Downcast</code>) to <code>Rc&lt;Any&gt;</code>, which can then be further
<code>downcast</code> into <code>Rc&lt;ConcreteType&gt;</code> where <code>ConcreteType</code> implements <code>Trait</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.as_any" class="method trait-impl"><a href="#method.as_any" class="anchor">§</a><h4 class="code-header">fn <a class="fn">as_any</a>(&amp;self) -&gt; &amp;(dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/any/trait.Any.html" title="trait core::any::Any">Any</a> + 'static)</h4></section></summary><div class='docblock'>Converts <code>&amp;Trait</code> (where <code>Trait: Downcast</code>) to <code>&amp;Any</code>. This is needed since Rust cannot
generate <code>&amp;Any</code>’s vtable from <code>&amp;Trait</code>’s.</div></details><details class="toggle method-toggle" open><summary><section id="method.as_any_mut" class="method trait-impl"><a href="#method.as_any_mut" class="anchor">§</a><h4 class="code-header">fn <a class="fn">as_any_mut</a>(&amp;mut self) -&gt; &amp;mut (dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/any/trait.Any.html" title="trait core::any::Any">Any</a> + 'static)</h4></section></summary><div class='docblock'>Converts <code>&amp;mut Trait</code> (where <code>Trait: Downcast</code>) to <code>&amp;Any</code>. This is needed since Rust cannot
generate <code>&amp;mut Any</code>’s vtable from <code>&amp;mut Trait</code>’s.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-DowncastSend-for-T" class="impl"><a href="#impl-DowncastSend-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; DowncastSend for T<div class="where">where
T: <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/any/trait.Any.html" title="trait core::any::Any">Any</a> + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into_any_send" class="method trait-impl"><a href="#method.into_any_send" class="anchor">§</a><h4 class="code-header">fn <a class="fn">into_any_send</a>(self: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;T&gt;) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/any/trait.Any.html" title="trait core::any::Any">Any</a> + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>&gt;</h4></section></summary><div class='docblock'>Converts <code>Box&lt;Trait&gt;</code> (where <code>Trait: DowncastSend</code>) to <code>Box&lt;dyn Any + Send&gt;</code>, which
can then be <code>downcast</code> into <code>Box&lt;ConcreteType&gt;</code> where <code>ConcreteType</code> implements <code>Trait</code>.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-DowncastSync-for-T" class="impl"><a href="#impl-DowncastSync-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; DowncastSync for T<div class="where">where
T: <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/any/trait.Any.html" title="trait core::any::Any">Any</a> + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into_any_sync" class="method trait-impl"><a href="#method.into_any_sync" class="anchor">§</a><h4 class="code-header">fn <a class="fn">into_any_sync</a>(self: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;T&gt;) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/any/trait.Any.html" title="trait core::any::Any">Any</a> + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>&gt;</h4></section></summary><div class='docblock'>Converts <code>Box&lt;Trait&gt;</code> (where <code>Trait: DowncastSync</code>) to <code>Box&lt;dyn Any + Send + Sync&gt;</code>,
which can then be <code>downcast</code> into <code>Box&lt;ConcreteType&gt;</code> where <code>ConcreteType</code> implements
<code>Trait</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.into_any_arc-1" class="method trait-impl"><a href="#method.into_any_arc-1" class="anchor">§</a><h4 class="code-header">fn <a class="fn">into_any_arc</a>(self: <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;T&gt;) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/any/trait.Any.html" title="trait core::any::Any">Any</a> + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>&gt; <a href="#" class="tooltip" data-notable-ty="Arc&lt;dyn Any + Send + Sync&gt;">ⓘ</a></h4></section></summary><div class='docblock'>Converts <code>Arc&lt;Trait&gt;</code> (where <code>Trait: DowncastSync</code>) to <code>Arc&lt;Any&gt;</code>, which can then be
<code>downcast</code> into <code>Arc&lt;ConcreteType&gt;</code> where <code>ConcreteType</code> implements <code>Trait</code>.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-DynClone-for-T" class="impl"><a class="src rightside" href="https://docs.rs/dyn-clone/1.0.19/src/dyn_clone/lib.rs.html#193-195">Source</a><a href="#impl-DynClone-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://docs.rs/dyn-clone/1.0.19/dyn_clone/trait.DynClone.html" title="trait dyn_clone::DynClone">DynClone</a> for T<div class="where">where
T: <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h3></section></summary><div class="impl-items"><section id="method.__clone_box" class="method trait-impl"><a class="src rightside" href="https://docs.rs/dyn-clone/1.0.19/src/dyn_clone/lib.rs.html#197">Source</a><a href="#method.__clone_box" class="anchor">§</a><h4 class="code-header">fn <a href="https://docs.rs/dyn-clone/1.0.19/dyn_clone/trait.DynClone.html#tymethod.__clone_box" class="fn">__clone_box</a>(&amp;self, _: <a class="struct" href="https://docs.rs/dyn-clone/1.0.19/dyn_clone/sealed/struct.Private.html" title="struct dyn_clone::sealed::Private">Private</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.pointer.html">*mut </a><a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.unit.html">()</a></h4></section></div></details><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><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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/src/core/convert/mod.rs.html#787">Source</a><a href="#impl-From%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt; for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.98.1/src/core/convert/mod.rs.html#790">Source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.98.1/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-FromRef%3CT%3E-for-T" class="impl"><a href="#impl-FromRef%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; FromRef&lt;T&gt; for T<div class="where">where
T: <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from_ref" class="method trait-impl"><a href="#method.from_ref" class="anchor">§</a><h4 class="code-header">fn <a class="fn">from_ref</a>(input: <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.reference.html">&amp;T</a>) -&gt; T</h4></section></summary><div class='docblock'>Converts to this type from a reference to the input type.</div></details></div></details><section id="impl-Fruit-for-T" class="impl"><a href="#impl-Fruit-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; Fruit for T<div class="where">where
T: <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + Downcast,</div></h3></section><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/1.98.1/src/core/convert/mod.rs.html#769-771">Source</a><a href="#impl-Into%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;U&gt; for T<div class="where">where
U: <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt;,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.98.1/src/core/convert/mod.rs.html#779">Source</a><a href="#method.into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.98.1/core/convert/trait.Into.html#tymethod.into" class="fn">into</a>(self) -&gt; U</h4></section></summary><div class="docblock"><p>Calls <code>U::from(self)</code>.</p>
<p>That is, this conversion is whatever the implementation of
<code><a href="https://doc.rust-lang.org/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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><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/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h3></section><section id="impl-MaybeSend-for-T-1" class="impl"><a href="#impl-MaybeSend-for-T-1" 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/1.98.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h3></section><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" class="associatedtype trait-impl"><a href="#associatedtype.Error" 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/1.98.1/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/1.98.1/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;<a class="enum" href="https://doc.rust-lang.org/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.98.1/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/1.98.1/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.98.1/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/1.98.1/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/1.98.1/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: <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a> + 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: <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a> + 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.20.1/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.20.1/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.20.1/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.20.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.reference.html">&amp;B</a>)) -&gt; Self<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/1.98.1/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/1.98.1/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/1.98.1/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.reference.html">&amp;mut B</a>)) -&gt; Self<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/1.98.1/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/1.98.1/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/1.98.1/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.reference.html">&amp;R</a>)) -&gt; Self<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/1.98.1/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/1.98.1/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/1.98.1/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.reference.html">&amp;mut R</a>)) -&gt; Self<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/1.98.1/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/1.98.1/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/1.98.1/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.reference.html">&amp;T</a>)) -&gt; Self<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/1.98.1/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/1.98.1/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/1.98.1/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.reference.html">&amp;mut T</a>)) -&gt; Self<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/1.98.1/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/1.98.1/core/ops/deref/trait.Deref.html" title="trait core::ops::deref::Deref">Deref</a>,
T: ?<a class="trait" href="https://doc.rust-lang.org/1.98.1/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/1.98.1/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/1.98.1/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/1.98.1/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.reference.html">&amp;B</a>)) -&gt; Self<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/1.98.1/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/1.98.1/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/1.98.1/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.reference.html">&amp;mut B</a>)) -&gt; Self<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/1.98.1/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/1.98.1/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/1.98.1/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.reference.html">&amp;R</a>)) -&gt; Self<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/1.98.1/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/1.98.1/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/1.98.1/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.reference.html">&amp;mut R</a>)) -&gt; Self<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/1.98.1/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/1.98.1/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/1.98.1/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.reference.html">&amp;T</a>)) -&gt; Self<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/1.98.1/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/1.98.1/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/1.98.1/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.reference.html">&amp;mut T</a>)) -&gt; Self<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/1.98.1/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/1.98.1/core/ops/deref/trait.Deref.html" title="trait core::ops::deref::Deref">Deref</a>,
T: ?<a class="trait" href="https://doc.rust-lang.org/1.98.1/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-ToOwned-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.98.1/src/alloc/borrow.rs.html#72-74">Source</a><a href="#impl-ToOwned-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.98.1/alloc/borrow/trait.ToOwned.html" title="trait alloc::borrow::ToOwned">ToOwned</a> for T<div class="where">where
T: <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Owned" class="associatedtype trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.98.1/src/alloc/borrow.rs.html#76">Source</a><a href="#associatedtype.Owned" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.98.1/alloc/borrow/trait.ToOwned.html#associatedtype.Owned" class="associatedtype">Owned</a> = T</h4></section></summary><div class='docblock'>The resulting type after obtaining ownership.</div></details><details class="toggle method-toggle" open><summary><section id="method.to_owned" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.98.1/src/alloc/borrow.rs.html#77">Source</a><a href="#method.to_owned" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.98.1/alloc/borrow/trait.ToOwned.html#tymethod.to_owned" class="fn">to_owned</a>(&amp;self) -&gt; T</h4></section></summary><div class='docblock'>Creates owned data from borrowed data, usually by cloning. <a href="https://doc.rust-lang.org/1.98.1/alloc/borrow/trait.ToOwned.html#tymethod.to_owned">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.98.1/src/alloc/borrow.rs.html#81">Source</a><a href="#method.clone_into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.98.1/alloc/borrow/trait.ToOwned.html#method.clone_into" class="fn">clone_into</a>(&amp;self, target: <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.reference.html">&amp;mut T</a>)</h4></section></summary><div class='docblock'>Uses borrowed data to replace owned data, usually by cloning. <a href="https://doc.rust-lang.org/1.98.1/alloc/borrow/trait.ToOwned.html#method.clone_into">Read more</a></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/1.98.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;T, Self::<a class="associatedtype" href="https://doc.rust-lang.org/1.98.1/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/1.98.1/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/1.98.1/src/core/convert/mod.rs.html#829-831">Source</a><a href="#impl-TryFrom%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;U&gt; for T<div class="where">where
U: <a class="trait" href="https://doc.rust-lang.org/1.98.1/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/1.98.1/src/core/convert/mod.rs.html#833">Source</a><a href="#associatedtype.Error-1" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.98.1/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = <a class="enum" href="https://doc.rust-lang.org/1.98.1/core/convert/enum.Infallible.html" title="enum core::convert::Infallible">Infallible</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.98.1/src/core/convert/mod.rs.html#836">Source</a><a href="#method.try_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.98.1/core/convert/trait.TryFrom.html#tymethod.try_from" class="fn">try_from</a>(value: U) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.98.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;T, &lt;T as <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;U&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/1.98.1/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>&gt;</h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryInto%3CU%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.98.1/src/core/convert/mod.rs.html#813-815">Source</a><a href="#impl-TryInto%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a>&lt;U&gt; for T<div class="where">where
U: <a class="trait" href="https://doc.rust-lang.org/1.98.1/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-2" class="associatedtype trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.98.1/src/core/convert/mod.rs.html#817">Source</a><a href="#associatedtype.Error-2" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.98.1/core/convert/trait.TryInto.html#associatedtype.Error" class="associatedtype">Error</a> = &lt;U as <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/1.98.1/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.98.1/src/core/convert/mod.rs.html#820">Source</a><a href="#method.try_into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.98.1/core/convert/trait.TryInto.html#tymethod.try_into" class="fn">try_into</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.98.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;U, &lt;U as <a class="trait" href="https://doc.rust-lang.org/1.98.1/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/1.98.1/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/1.98.1/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="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/1.98.1/std/primitive.reference.html">&amp;G2</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.98.1/std/primitive.bool.html">bool</a></h4></section></div></details></div><script type="text/json" id="notable-traits-data">{"Arc<AtomicBool>":"<h3>Notable traits for <code><a class=\"struct\" href=\"https://doc.rust-lang.org/1.98.1/alloc/sync/struct.Arc.html\" title=\"struct alloc::sync::Arc\">Arc</a>&lt;R&gt;</code></h3><pre><code><div class=\"where\">impl&lt;R&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/1.98.1/std/io/trait.Read.html\" title=\"trait std::io::Read\">Read</a> for <a class=\"struct\" href=\"https://doc.rust-lang.org/1.98.1/alloc/sync/struct.Arc.html\" title=\"struct alloc::sync::Arc\">Arc</a>&lt;R&gt;<div class=\"where\">where\n R: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.98.1/std/io/trait.Read.html\" title=\"trait std::io::Read\">Read</a> + <a class=\"trait\" href=\"https://doc.rust-lang.org/1.98.1/std/io/trait.IoHandle.html\" title=\"trait std::io::IoHandle\">IoHandle</a> + ?<a class=\"trait\" href=\"https://doc.rust-lang.org/1.98.1/core/marker/trait.Sized.html\" title=\"trait core::marker::Sized\">Sized</a>,\n <a class=\"primitive\" href=\"https://doc.rust-lang.org/1.98.1/std/primitive.reference.html\">&amp;'a R</a>: for&lt;'a&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/1.98.1/std/io/trait.Read.html\" title=\"trait std::io::Read\">Read</a>,</div></div><div class=\"where\">impl&lt;W&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/1.98.1/std/io/trait.Write.html\" title=\"trait std::io::Write\">Write</a> for <a class=\"struct\" href=\"https://doc.rust-lang.org/1.98.1/alloc/sync/struct.Arc.html\" title=\"struct alloc::sync::Arc\">Arc</a>&lt;W&gt;<div class=\"where\">where\n W: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.98.1/std/io/trait.Write.html\" title=\"trait std::io::Write\">Write</a> + <a class=\"trait\" href=\"https://doc.rust-lang.org/1.98.1/std/io/trait.IoHandle.html\" title=\"trait std::io::IoHandle\">IoHandle</a> + ?<a class=\"trait\" href=\"https://doc.rust-lang.org/1.98.1/core/marker/trait.Sized.html\" title=\"trait core::marker::Sized\">Sized</a>,\n <a class=\"primitive\" href=\"https://doc.rust-lang.org/1.98.1/std/primitive.reference.html\">&amp;'a W</a>: for&lt;'a&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/1.98.1/std/io/trait.Write.html\" title=\"trait std::io::Write\">Write</a>,</div></div>","Arc<dyn Any + Send + Sync>":"<h3>Notable traits for <code><a class=\"struct\" href=\"https://doc.rust-lang.org/1.98.1/alloc/sync/struct.Arc.html\" title=\"struct alloc::sync::Arc\">Arc</a>&lt;R&gt;</code></h3><pre><code><div class=\"where\">impl&lt;R&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/1.98.1/std/io/trait.Read.html\" title=\"trait std::io::Read\">Read</a> for <a class=\"struct\" href=\"https://doc.rust-lang.org/1.98.1/alloc/sync/struct.Arc.html\" title=\"struct alloc::sync::Arc\">Arc</a>&lt;R&gt;<div class=\"where\">where\n R: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.98.1/std/io/trait.Read.html\" title=\"trait std::io::Read\">Read</a> + <a class=\"trait\" href=\"https://doc.rust-lang.org/1.98.1/std/io/trait.IoHandle.html\" title=\"trait std::io::IoHandle\">IoHandle</a> + ?<a class=\"trait\" href=\"https://doc.rust-lang.org/1.98.1/core/marker/trait.Sized.html\" title=\"trait core::marker::Sized\">Sized</a>,\n <a class=\"primitive\" href=\"https://doc.rust-lang.org/1.98.1/std/primitive.reference.html\">&amp;'a R</a>: for&lt;'a&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/1.98.1/std/io/trait.Read.html\" title=\"trait std::io::Read\">Read</a>,</div></div><div class=\"where\">impl&lt;W&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/1.98.1/std/io/trait.Write.html\" title=\"trait std::io::Write\">Write</a> for <a class=\"struct\" href=\"https://doc.rust-lang.org/1.98.1/alloc/sync/struct.Arc.html\" title=\"struct alloc::sync::Arc\">Arc</a>&lt;W&gt;<div class=\"where\">where\n W: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.98.1/std/io/trait.Write.html\" title=\"trait std::io::Write\">Write</a> + <a class=\"trait\" href=\"https://doc.rust-lang.org/1.98.1/std/io/trait.IoHandle.html\" title=\"trait std::io::IoHandle\">IoHandle</a> + ?<a class=\"trait\" href=\"https://doc.rust-lang.org/1.98.1/core/marker/trait.Sized.html\" title=\"trait core::marker::Sized\">Sized</a>,\n <a class=\"primitive\" href=\"https://doc.rust-lang.org/1.98.1/std/primitive.reference.html\">&amp;'a W</a>: for&lt;'a&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/1.98.1/std/io/trait.Write.html\" title=\"trait std::io::Write\">Write</a>,</div></div>","Vec<Result<Output>>":"<h3>Notable traits for <code><a class=\"struct\" href=\"https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html\" title=\"struct alloc::vec::Vec\">Vec</a>&lt;<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.98.1/std/primitive.u8.html\">u8</a>, A&gt;</code></h3><pre><code><div class=\"where\">impl&lt;A&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/1.98.1/std/io/trait.Write.html\" title=\"trait std::io::Write\">Write</a> for <a class=\"struct\" href=\"https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html\" title=\"struct alloc::vec::Vec\">Vec</a>&lt;<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.98.1/std/primitive.u8.html\">u8</a>, A&gt;<div class=\"where\">where\n A: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.98.1/core/alloc/trait.Allocator.html\" title=\"trait core::alloc::Allocator\">Allocator</a>,</div></div>"}</script></section></div></main></body></html>