Skip to main content

NormalizingVisitor

Struct NormalizingVisitor 

Source
pub struct NormalizingVisitor<T: NameTransformer> {
    transformer: T,
    cte_scope: CteScope,
}
Expand description

Visitor that traverses SQL AST and transforms names using a given strategy.

This struct is generic over the NameTransformer trait, allowing different transformation strategies to reuse the same traversal logic.

Implements VisitMut to delegate query-level traversal to mz-sql-parser’s auto-generated visitor, overriding only visit_query_mut (CTE scope) and visit_table_factor_mut (name transformation + implicit aliasing).

Fields§

§transformer: T§cte_scope: CteScope

Implementations§

Source§

impl<T: NameTransformer> NormalizingVisitor<T>

Source

pub fn new(transformer: T) -> Self

Create a new visitor with the given transformer.

Source

pub fn transformer(&self) -> &T

Get a reference to the transformer.

Source

pub fn normalize_raw_item_name(&self, name: &mut RawItemName)

Normalize a RawItemName to be transformed according to the strategy.

Converts partially qualified or unqualified object references using the current file’s FQN context.

CTEs (Common Table Expressions) are not transformed - they remain as-is.

Source

pub fn normalize_unresolved_item_name(&self, name: &mut UnresolvedItemName)

Normalize an UnresolvedItemName to be transformed according to the strategy.

Similar to normalize_raw_item_name, but works directly with UnresolvedItemName.

Source

pub fn normalize_unresolved_schema_name(&self, name: &mut UnresolvedSchemaName)

Normalize an UnresolvedSchemaName to be fully qualified (database.schema).

Converts unqualified schema names (e.g., public) to fully qualified names (e.g., materialize.public) using the current file’s FQN context.

Source

pub fn normalize_sink_connection( &self, connection: &mut CreateSinkConnection<Raw>, )

Normalize connection references in CREATE SINK statements.

Handles both Kafka and Iceberg sink types, ensuring their connection references are normalized.

Source

pub fn normalize_source_connection( &self, connection: &mut CreateSourceConnection<Raw>, )

Normalize the connection reference in CREATE SOURCE statements.

Sources reference a connection (Kafka, Postgres, etc.) that needs to be normalized to a fully qualified name.

Source

pub fn normalize_connection_options( &self, options: &mut [ConnectionOption<Raw>], )

Normalize connection option references in CREATE CONNECTION statements.

Handles secret references, item references, AWS PrivateLink connections, and Kafka broker tunnels within connection options.

Source

fn normalize_with_option_value(&self, value: &mut WithOptionValue<Raw>)

Normalize a single WithOptionValue, recursing into nested structures.

Source

pub fn normalize_query(&mut self, query: &mut Query<Raw>)

Normalize all table references in a query (used for views and materialized views).

Delegates to the VisitMut implementation which handles CTE scoping and recursive traversal automatically.

Source

pub fn normalize_index_references( &self, indexes: &mut [CreateIndexStatement<Raw>], )

Normalize index references.

Indexes reference the table/view they’re created on, and this reference needs to be normalized.

Source

pub fn normalize_index_clusters( &self, indexes: &mut [CreateIndexStatement<Raw>], )

Normalize cluster references in indexes.

Indexes can specify an IN CLUSTER clause, and these cluster references need to be normalized for staging environments.

Source

pub fn normalize_grant_references( &self, grants: &mut [GrantPrivilegesStatement<Raw>], )

Normalize grant target references.

GRANT statements reference the object they grant permissions on, and these references need to be normalized.

Source

pub fn normalize_comment_references( &self, comments: &mut [CommentStatement<Raw>], )

Normalize comment object references.

COMMENT statements reference the object they comment on, and these references need to be normalized.

Source

pub fn normalize_cluster_name(&self, cluster: &mut Option<RawClusterName>)

Normalize a cluster name using a ClusterTransformer.

This method transforms cluster references in statements that support the IN CLUSTER clause. It’s primarily used by the StagingTransformer to rename clusters for staging environments.

§Type Parameter

T must implement ClusterTransformer for this method to be callable.

Source§

impl<'a> NormalizingVisitor<FullyQualifyingTransformer<'a>>

Source

pub fn fully_qualifying(fqn: &'a FullyQualifiedName) -> Self

Create a visitor that fully qualifies names (database.schema.object).

Source

pub fn fully_qualifying_with_db_map( fqn: &'a FullyQualifiedName, database_name_map: Option<&'a BTreeMap<String, String>>, ) -> Self

Create a visitor that fully qualifies names and optionally rewrites cross-database references using a database name map.

Source§

impl<'a> NormalizingVisitor<FlatteningTransformer<'a>>

Source

pub fn flattening(fqn: &'a FullyQualifiedName) -> Self

Create a visitor that flattens names (database_schema_object).

Source§

impl<'a> NormalizingVisitor<ExplainTransformer<'a>>

Source

pub fn explain( fqn: &'a FullyQualifiedName, explain_database: String, explain_schema: String, ) -> Self

Create a visitor that transforms names for the explain command.

All object references are rewritten to <database>.<explain_schema>."db.schema.obj", and all IN CLUSTER clauses are rewritten to quickstart.

Source§

impl<'a> NormalizingVisitor<OverlayTransformer<'a>>

Source

pub fn overlay( fqn: &'a FullyQualifiedName, profile_name: &'a str, in_project_databases: &'a BTreeSet<String>, dirty_schemas: &'a BTreeSet<SchemaQualifier>, target_cluster: &'a str, ) -> Self

Create a visitor that rewrites references for mz-deploy dev overlay compilation.

Applies the two-step schema-level resolution rule:

  • External databases (not in in_project_databases) → emit verbatim.
  • Dirty (database, schema) pairs → rewrite database component to <database>__<profile_name>.

Any configured profile_suffix is applied to in-project names by the project planner before dev calls this constructor, so the transformer sees already-suffixed names.

§Arguments
  • fqn - Context used to resolve 1- and 2-part names to fully qualified form.
  • profile_name - Developer profile name; becomes the __<name> suffix on overlay databases.
  • in_project_databases - Set of databases declared in the project’s project.toml (or equivalent ownership declaration). References to databases outside this set are treated as external and emitted verbatim.
  • dirty_schemas - Dirty (database, schema) pairs.
  • target_cluster - Cluster name to rewrite every IN CLUSTER clause on overlay materialized views and indexes to.
Source§

impl<'a> NormalizingVisitor<StagingTransformer<'a>>

Source

pub fn staging( fqn: &'a FullyQualifiedName, suffix: String, external_dependencies: &'a BTreeSet<ObjectId>, objects_to_deploy: Option<&'a BTreeSet<ObjectId>>, replacement_objects: &'a BTreeSet<ObjectId>, ) -> Self

Create a visitor that transforms names for staging environments.

This visitor appends a suffix to schema and cluster names to create isolated staging environments. External dependencies and objects not being deployed are NOT transformed.

§Arguments
  • fqn - The fully qualified name context
  • suffix - The suffix to append (e.g., “_staging”)
  • external_dependencies - Set of external dependencies that should NOT be transformed
  • objects_to_deploy - Optional set of objects being deployed; objects not in this set are treated as external
§Example
let visitor = NormalizingVisitor::staging(&fqn, "_staging".to_string(), &external_deps, Some(&objects));
// Transforms: public → public_staging, quickstart → quickstart_staging
// But leaves external dependencies and non-deployed objects unchanged

Trait Implementations§

Source§

impl<T: NameTransformer> VisitMut<'_, Raw> for NormalizingVisitor<T>

Source§

fn visit_query_mut(&mut self, node: &mut Query<Raw>)

Source§

fn visit_table_factor_mut(&mut self, node: &mut TableFactor<Raw>)

Source§

fn visit_abbreviated_grant_or_revoke_statement_mut( &mut self, node: &'ast mut AbbreviatedGrantOrRevokeStatement<T>, )

Source§

fn visit_abbreviated_grant_statement_mut( &mut self, node: &'ast mut AbbreviatedGrantStatement<T>, )

Source§

fn visit_abbreviated_revoke_statement_mut( &mut self, node: &'ast mut AbbreviatedRevokeStatement<T>, )

Source§

fn visit_alter_cluster_action_mut( &mut self, node: &'ast mut AlterClusterAction<T>, )

Source§

fn visit_alter_cluster_statement_mut( &mut self, node: &'ast mut AlterClusterStatement<T>, )

Source§

fn visit_alter_connection_action_mut( &mut self, node: &'ast mut AlterConnectionAction<T>, )

Source§

fn visit_alter_connection_option_mut( &mut self, node: &'ast mut AlterConnectionOption<T>, )

Source§

fn visit_alter_connection_option_name_mut( &mut self, node: &'ast mut AlterConnectionOptionName, )

Source§

fn visit_alter_connection_statement_mut( &mut self, node: &'ast mut AlterConnectionStatement<T>, )

Source§

fn visit_alter_default_privileges_statement_mut( &mut self, node: &'ast mut AlterDefaultPrivilegesStatement<T>, )

Source§

fn visit_alter_index_action_mut(&mut self, node: &'ast mut AlterIndexAction<T>)

Source§

fn visit_alter_index_statement_mut( &mut self, node: &'ast mut AlterIndexStatement<T>, )

Source§

fn visit_alter_materialized_view_apply_replacement_statement_mut( &mut self, node: &'ast mut AlterMaterializedViewApplyReplacementStatement, )

Source§

fn visit_alter_network_policy_statement_mut( &mut self, node: &'ast mut AlterNetworkPolicyStatement<T>, )

Source§

fn visit_alter_object_rename_statement_mut( &mut self, node: &'ast mut AlterObjectRenameStatement, )

Source§

fn visit_alter_object_swap_statement_mut( &mut self, node: &'ast mut AlterObjectSwapStatement, )

Source§

fn visit_alter_owner_statement_mut( &mut self, node: &'ast mut AlterOwnerStatement<T>, )

Source§

fn visit_alter_retain_history_statement_mut( &mut self, node: &'ast mut AlterRetainHistoryStatement<T>, )

Source§

fn visit_alter_role_option_mut(&mut self, node: &'ast mut AlterRoleOption)

Source§

fn visit_alter_role_statement_mut( &mut self, node: &'ast mut AlterRoleStatement<T>, )

Source§

fn visit_alter_secret_statement_mut( &mut self, node: &'ast mut AlterSecretStatement<T>, )

Source§

fn visit_alter_set_cluster_statement_mut( &mut self, node: &'ast mut AlterSetClusterStatement<T>, )

Source§

fn visit_alter_sink_action_mut(&mut self, node: &'ast mut AlterSinkAction<T>)

Source§

fn visit_alter_sink_statement_mut( &mut self, node: &'ast mut AlterSinkStatement<T>, )

Source§

fn visit_alter_source_action_mut( &mut self, node: &'ast mut AlterSourceAction<T>, )

Source§

fn visit_alter_source_add_subsource_option_mut( &mut self, node: &'ast mut AlterSourceAddSubsourceOption<T>, )

Source§

fn visit_alter_source_add_subsource_option_name_mut( &mut self, node: &'ast mut AlterSourceAddSubsourceOptionName, )

Source§

fn visit_alter_source_statement_mut( &mut self, node: &'ast mut AlterSourceStatement<T>, )

Source§

fn visit_alter_system_reset_all_statement_mut( &mut self, node: &'ast mut AlterSystemResetAllStatement, )

Source§

fn visit_alter_system_reset_statement_mut( &mut self, node: &'ast mut AlterSystemResetStatement, )

Source§

fn visit_alter_system_set_statement_mut( &mut self, node: &'ast mut AlterSystemSetStatement, )

Source§

fn visit_alter_table_add_column_statement_mut( &mut self, node: &'ast mut AlterTableAddColumnStatement<T>, )

Source§

fn visit_as_of_mut(&mut self, node: &'ast mut AsOf<T>)

Source§

fn visit_assignment_mut(&mut self, node: &'ast mut Assignment<T>)

Source§

fn visit_avro_doc_on_mut(&mut self, node: &'ast mut AvroDocOn<T>)

Source§

fn visit_avro_schema_mut(&mut self, node: &'ast mut AvroSchema<T>)

Source§

fn visit_avro_schema_option_mut(&mut self, node: &'ast mut AvroSchemaOption<T>)

Source§

fn visit_avro_schema_option_name_mut( &mut self, node: &'ast mut AvroSchemaOptionName, )

Source§

fn visit_catalog_name_mut(&mut self, node: &'ast mut CatalogName)

Source§

fn visit_close_statement_mut(&mut self, node: &'ast mut CloseStatement)

Source§

fn visit_cluster_alter_option_mut( &mut self, node: &'ast mut ClusterAlterOption<T>, )

Source§

fn visit_cluster_alter_option_name_mut( &mut self, node: &'ast mut ClusterAlterOptionName, )

Source§

fn visit_cluster_alter_option_value_mut( &mut self, node: &'ast mut ClusterAlterOptionValue<T>, )

Source§

fn visit_cluster_alter_until_ready_option_mut( &mut self, node: &'ast mut ClusterAlterUntilReadyOption<T>, )

Source§

fn visit_cluster_alter_until_ready_option_name_mut( &mut self, node: &'ast mut ClusterAlterUntilReadyOptionName, )

Source§

fn visit_cluster_feature_mut(&mut self, node: &'ast mut ClusterFeature<T>)

Source§

fn visit_cluster_feature_name_mut(&mut self, node: &'ast mut ClusterFeatureName)

Source§

fn visit_cluster_option_mut(&mut self, node: &'ast mut ClusterOption<T>)

Source§

fn visit_cluster_option_name_mut(&mut self, node: &'ast mut ClusterOptionName)

Source§

fn visit_cluster_schedule_option_value_mut( &mut self, node: &'ast mut ClusterScheduleOptionValue, )

Source§

fn visit_column_def_mut(&mut self, node: &'ast mut ColumnDef<T>)

Source§

fn visit_column_name_mut(&mut self, node: &'ast mut ColumnName<T>)

Source§

fn visit_column_option_mut(&mut self, node: &'ast mut ColumnOption<T>)

Source§

fn visit_column_option_def_mut(&mut self, node: &'ast mut ColumnOptionDef<T>)

Source§

fn visit_column_versioned_mut(&mut self, node: &'ast mut ColumnVersioned)

Source§

fn visit_comment_object_type_mut( &mut self, node: &'ast mut CommentObjectType<T>, )

Source§

fn visit_comment_statement_mut(&mut self, node: &'ast mut CommentStatement<T>)

Source§

fn visit_commit_statement_mut(&mut self, node: &'ast mut CommitStatement)

Source§

fn visit_connection_option_mut(&mut self, node: &'ast mut ConnectionOption<T>)

Source§

fn visit_connection_option_name_mut( &mut self, node: &'ast mut ConnectionOptionName, )

Source§

fn visit_connection_rule_pattern_mut( &mut self, node: &'ast mut ConnectionRulePattern, )

Source§

fn visit_copy_direction_mut(&mut self, node: &'ast mut CopyDirection)

Source§

fn visit_copy_option_mut(&mut self, node: &'ast mut CopyOption<T>)

Source§

fn visit_copy_option_name_mut(&mut self, node: &'ast mut CopyOptionName)

Source§

fn visit_copy_relation_mut(&mut self, node: &'ast mut CopyRelation<T>)

Source§

fn visit_copy_statement_mut(&mut self, node: &'ast mut CopyStatement<T>)

Source§

fn visit_copy_target_mut(&mut self, node: &'ast mut CopyTarget<T>)

Source§

fn visit_create_cluster_replica_statement_mut( &mut self, node: &'ast mut CreateClusterReplicaStatement<T>, )

Source§

fn visit_create_cluster_statement_mut( &mut self, node: &'ast mut CreateClusterStatement<T>, )

Source§

fn visit_create_connection_option_mut( &mut self, node: &'ast mut CreateConnectionOption<T>, )

Source§

fn visit_create_connection_option_name_mut( &mut self, node: &'ast mut CreateConnectionOptionName, )

Source§

fn visit_create_connection_statement_mut( &mut self, node: &'ast mut CreateConnectionStatement<T>, )

Source§

fn visit_create_connection_type_mut( &mut self, node: &'ast mut CreateConnectionType, )

Source§

fn visit_create_database_statement_mut( &mut self, node: &'ast mut CreateDatabaseStatement, )

Source§

fn visit_create_index_statement_mut( &mut self, node: &'ast mut CreateIndexStatement<T>, )

Source§

fn visit_create_materialized_view_statement_mut( &mut self, node: &'ast mut CreateMaterializedViewStatement<T>, )

Source§

fn visit_create_network_policy_statement_mut( &mut self, node: &'ast mut CreateNetworkPolicyStatement<T>, )

Source§

fn visit_create_role_statement_mut( &mut self, node: &'ast mut CreateRoleStatement, )

Source§

fn visit_create_schema_statement_mut( &mut self, node: &'ast mut CreateSchemaStatement, )

Source§

fn visit_create_secret_statement_mut( &mut self, node: &'ast mut CreateSecretStatement<T>, )

Source§

fn visit_create_sink_connection_mut( &mut self, node: &'ast mut CreateSinkConnection<T>, )

Source§

fn visit_create_sink_option_mut(&mut self, node: &'ast mut CreateSinkOption<T>)

Source§

fn visit_create_sink_option_name_mut( &mut self, node: &'ast mut CreateSinkOptionName, )

Source§

fn visit_create_sink_statement_mut( &mut self, node: &'ast mut CreateSinkStatement<T>, )

Source§

fn visit_create_source_connection_mut( &mut self, node: &'ast mut CreateSourceConnection<T>, )

Source§

fn visit_create_source_option_mut( &mut self, node: &'ast mut CreateSourceOption<T>, )

Source§

fn visit_create_source_option_name_mut( &mut self, node: &'ast mut CreateSourceOptionName, )

Source§

fn visit_create_source_statement_mut( &mut self, node: &'ast mut CreateSourceStatement<T>, )

Source§

fn visit_create_subsource_option_mut( &mut self, node: &'ast mut CreateSubsourceOption<T>, )

Source§

fn visit_create_subsource_option_name_mut( &mut self, node: &'ast mut CreateSubsourceOptionName, )

Source§

fn visit_create_subsource_statement_mut( &mut self, node: &'ast mut CreateSubsourceStatement<T>, )

Source§

fn visit_create_table_from_source_statement_mut( &mut self, node: &'ast mut CreateTableFromSourceStatement<T>, )

Source§

fn visit_create_table_statement_mut( &mut self, node: &'ast mut CreateTableStatement<T>, )

Source§

fn visit_create_type_as_mut(&mut self, node: &'ast mut CreateTypeAs<T>)

Source§

fn visit_create_type_list_option_mut( &mut self, node: &'ast mut CreateTypeListOption<T>, )

Source§

fn visit_create_type_list_option_name_mut( &mut self, node: &'ast mut CreateTypeListOptionName, )

Source§

fn visit_create_type_map_option_mut( &mut self, node: &'ast mut CreateTypeMapOption<T>, )

Source§

fn visit_create_type_map_option_name_mut( &mut self, node: &'ast mut CreateTypeMapOptionName, )

Source§

fn visit_create_type_statement_mut( &mut self, node: &'ast mut CreateTypeStatement<T>, )

Source§

fn visit_create_view_statement_mut( &mut self, node: &'ast mut CreateViewStatement<T>, )

Source§

fn visit_create_webhook_source_body_mut( &mut self, node: &'ast mut CreateWebhookSourceBody, )

Source§

fn visit_create_webhook_source_check_mut( &mut self, node: &'ast mut CreateWebhookSourceCheck<T>, )

Source§

fn visit_create_webhook_source_check_options_mut( &mut self, node: &'ast mut CreateWebhookSourceCheckOptions<T>, )

Source§

fn visit_create_webhook_source_filter_header_mut( &mut self, node: &'ast mut CreateWebhookSourceFilterHeader, )

Source§

fn visit_create_webhook_source_header_mut( &mut self, node: &'ast mut CreateWebhookSourceHeader, )

Source§

fn visit_create_webhook_source_include_headers_mut( &mut self, node: &'ast mut CreateWebhookSourceIncludeHeaders, )

Source§

fn visit_create_webhook_source_map_header_mut( &mut self, node: &'ast mut CreateWebhookSourceMapHeader, )

Source§

fn visit_create_webhook_source_secret_mut( &mut self, node: &'ast mut CreateWebhookSourceSecret<T>, )

Source§

fn visit_create_webhook_source_statement_mut( &mut self, node: &'ast mut CreateWebhookSourceStatement<T>, )

Source§

fn visit_csr_config_option_mut(&mut self, node: &'ast mut CsrConfigOption<T>)

Source§

fn visit_csr_config_option_name_mut( &mut self, node: &'ast mut CsrConfigOptionName<T>, )

Source§

fn visit_csr_connection_mut(&mut self, node: &'ast mut CsrConnection<T>)

Source§

fn visit_csr_connection_avro_mut( &mut self, node: &'ast mut CsrConnectionAvro<T>, )

Source§

fn visit_csr_connection_protobuf_mut( &mut self, node: &'ast mut CsrConnectionProtobuf<T>, )

Source§

fn visit_csr_seed_avro_mut(&mut self, node: &'ast mut CsrSeedAvro)

Source§

fn visit_csr_seed_protobuf_mut(&mut self, node: &'ast mut CsrSeedProtobuf)

Source§

fn visit_csr_seed_protobuf_schema_mut( &mut self, node: &'ast mut CsrSeedProtobufSchema, )

Source§

fn visit_csv_columns_mut(&mut self, node: &'ast mut CsvColumns)

Source§

fn visit_cte_mut(&mut self, node: &'ast mut Cte<T>)

Source§

fn visit_cte_block_mut(&mut self, node: &'ast mut CteBlock<T>)

Source§

fn visit_cte_mut_rec_mut(&mut self, node: &'ast mut CteMutRec<T>)

Source§

fn visit_cte_mut_rec_column_def_mut( &mut self, node: &'ast mut CteMutRecColumnDef<T>, )

Source§

fn visit_date_time_field_mut(&mut self, node: &'ast mut DateTimeField)

Source§

fn visit_deallocate_statement_mut( &mut self, node: &'ast mut DeallocateStatement, )

Source§

fn visit_declare_statement_mut(&mut self, node: &'ast mut DeclareStatement<T>)

Source§

fn visit_deferred_item_name_mut(&mut self, node: &'ast mut DeferredItemName<T>)

Source§

fn visit_delete_statement_mut(&mut self, node: &'ast mut DeleteStatement<T>)

Source§

fn visit_discard_statement_mut(&mut self, node: &'ast mut DiscardStatement)

Source§

fn visit_discard_target_mut(&mut self, node: &'ast mut DiscardTarget)

Source§

fn visit_distinct_mut(&mut self, node: &'ast mut Distinct<T>)

Source§

fn visit_doc_on_identifier_mut(&mut self, node: &'ast mut DocOnIdentifier<T>)

Source§

fn visit_doc_on_schema_mut(&mut self, node: &'ast mut DocOnSchema)

Source§

fn visit_drop_objects_statement_mut( &mut self, node: &'ast mut DropObjectsStatement, )

Source§

fn visit_drop_owned_statement_mut( &mut self, node: &'ast mut DropOwnedStatement<T>, )

Source§

fn visit_execute_statement_mut(&mut self, node: &'ast mut ExecuteStatement<T>)

Source§

fn visit_execute_unit_test_statement_mut( &mut self, node: &'ast mut ExecuteUnitTestStatement<T>, )

Source§

fn visit_expected_result_def_mut( &mut self, node: &'ast mut ExpectedResultDef<T>, )

Source§

fn visit_explain_analyze_cluster_statement_mut( &mut self, node: &'ast mut ExplainAnalyzeClusterStatement, )

Source§

fn visit_explain_analyze_computation_properties_mut( &mut self, node: &'ast mut ExplainAnalyzeComputationProperties, )

Source§

fn visit_explain_analyze_computation_property_mut( &mut self, node: &'ast mut ExplainAnalyzeComputationProperty, )

Source§

fn visit_explain_analyze_object_statement_mut( &mut self, node: &'ast mut ExplainAnalyzeObjectStatement<T>, )

Source§

fn visit_explain_analyze_property_mut( &mut self, node: &'ast mut ExplainAnalyzeProperty, )

Source§

fn visit_explain_format_mut(&mut self, node: &'ast mut ExplainFormat)

Source§

fn visit_explain_plan_option_mut( &mut self, node: &'ast mut ExplainPlanOption<T>, )

Source§

fn visit_explain_plan_option_name_mut( &mut self, node: &'ast mut ExplainPlanOptionName, )

Source§

fn visit_explain_plan_statement_mut( &mut self, node: &'ast mut ExplainPlanStatement<T>, )

Source§

fn visit_explain_pushdown_statement_mut( &mut self, node: &'ast mut ExplainPushdownStatement<T>, )

Source§

fn visit_explain_sink_schema_for_mut( &mut self, node: &'ast mut ExplainSinkSchemaFor, )

Source§

fn visit_explain_sink_schema_statement_mut( &mut self, node: &'ast mut ExplainSinkSchemaStatement<T>, )

Source§

fn visit_explain_stage_mut(&mut self, node: &'ast mut ExplainStage)

Source§

fn visit_explain_timestamp_statement_mut( &mut self, node: &'ast mut ExplainTimestampStatement<T>, )

Source§

fn visit_explainee_mut(&mut self, node: &'ast mut Explainee<T>)

Source§

fn visit_expr_mut(&mut self, node: &'ast mut Expr<T>)

Source§

fn visit_external_reference_export_mut( &mut self, node: &'ast mut ExternalReferenceExport, )

Source§

fn visit_external_references_mut(&mut self, node: &'ast mut ExternalReferences)

Source§

fn visit_fetch_direction_mut(&mut self, node: &'ast mut FetchDirection)

Source§

fn visit_fetch_option_mut(&mut self, node: &'ast mut FetchOption<T>)

Source§

fn visit_fetch_option_name_mut(&mut self, node: &'ast mut FetchOptionName)

Source§

fn visit_fetch_statement_mut(&mut self, node: &'ast mut FetchStatement<T>)

Source§

fn visit_format_mut(&mut self, node: &'ast mut Format<T>)

Source§

fn visit_format_specifier_mut(&mut self, node: &'ast mut FormatSpecifier<T>)

Source§

fn visit_function_mut(&mut self, node: &'ast mut Function<T>)

Source§

fn visit_function_args_mut(&mut self, node: &'ast mut FunctionArgs<T>)

Source§

fn visit_glue_avro_option_mut(&mut self, node: &'ast mut GlueAvroOption<T>)

Source§

fn visit_glue_avro_option_name_mut( &mut self, node: &'ast mut GlueAvroOptionName, )

Source§

fn visit_glue_avro_seed_mut(&mut self, node: &'ast mut GlueAvroSeed)

Source§

fn visit_grant_privileges_statement_mut( &mut self, node: &'ast mut GrantPrivilegesStatement<T>, )

Source§

fn visit_grant_role_statement_mut( &mut self, node: &'ast mut GrantRoleStatement<T>, )

Source§

fn visit_grant_target_all_specification_mut( &mut self, node: &'ast mut GrantTargetAllSpecification<T>, )

Source§

fn visit_grant_target_specification_mut( &mut self, node: &'ast mut GrantTargetSpecification<T>, )

Source§

fn visit_grant_target_specification_inner_mut( &mut self, node: &'ast mut GrantTargetSpecificationInner<T>, )

Source§

fn visit_homogenizing_function_mut( &mut self, node: &'ast mut HomogenizingFunction, )

Source§

fn visit_iceberg_sink_config_option_mut( &mut self, node: &'ast mut IcebergSinkConfigOption<T>, )

Source§

fn visit_iceberg_sink_config_option_name_mut( &mut self, node: &'ast mut IcebergSinkConfigOptionName, )

Source§

fn visit_iceberg_sink_mode_mut(&mut self, node: &'ast mut IcebergSinkMode)

Source§

fn visit_ident_mut(&mut self, node: &'ast mut Ident)

Source§

fn visit_ident_error_mut(&mut self, node: &'ast mut IdentError)

Source§

fn visit_if_exists_behavior_mut(&mut self, node: &'ast mut IfExistsBehavior)

Source§

fn visit_index_option_mut(&mut self, node: &'ast mut IndexOption<T>)

Source§

fn visit_index_option_name_mut(&mut self, node: &'ast mut IndexOptionName)

Source§

fn visit_insert_source_mut(&mut self, node: &'ast mut InsertSource<T>)

Source§

fn visit_insert_statement_mut(&mut self, node: &'ast mut InsertStatement<T>)

Source§

fn visit_inspect_shard_statement_mut( &mut self, node: &'ast mut InspectShardStatement, )

Source§

fn visit_interval_value_mut(&mut self, node: &'ast mut IntervalValue)

Source§

fn visit_is_expr_construct_mut(&mut self, node: &'ast mut IsExprConstruct<T>)

Source§

fn visit_join_mut(&mut self, node: &'ast mut Join<T>)

Source§

fn visit_join_constraint_mut(&mut self, node: &'ast mut JoinConstraint<T>)

Source§

fn visit_join_operator_mut(&mut self, node: &'ast mut JoinOperator<T>)

Source§

fn visit_kafka_broker_mut(&mut self, node: &'ast mut KafkaBroker<T>)

Source§

fn visit_kafka_broker_tunnel_mut( &mut self, node: &'ast mut KafkaBrokerTunnel<T>, )

Source§

fn visit_kafka_matching_broker_rule_mut( &mut self, node: &'ast mut KafkaMatchingBrokerRule<T>, )

Source§

fn visit_kafka_sink_config_option_mut( &mut self, node: &'ast mut KafkaSinkConfigOption<T>, )

Source§

fn visit_kafka_sink_config_option_name_mut( &mut self, node: &'ast mut KafkaSinkConfigOptionName, )

Source§

fn visit_kafka_source_config_option_mut( &mut self, node: &'ast mut KafkaSourceConfigOption<T>, )

Source§

fn visit_kafka_source_config_option_name_mut( &mut self, node: &'ast mut KafkaSourceConfigOptionName, )

Source§

fn visit_key_constraint_mut(&mut self, node: &'ast mut KeyConstraint)

Source§

fn visit_limit_mut(&mut self, node: &'ast mut Limit<T>)

Source§

fn visit_load_generator_mut(&mut self, node: &'ast mut LoadGenerator)

Source§

fn visit_load_generator_option_mut( &mut self, node: &'ast mut LoadGeneratorOption<T>, )

Source§

fn visit_load_generator_option_name_mut( &mut self, node: &'ast mut LoadGeneratorOptionName, )

Source§

fn visit_map_entry_mut(&mut self, node: &'ast mut MapEntry<T>)

Source§

fn visit_materialized_view_option_mut( &mut self, node: &'ast mut MaterializedViewOption<T>, )

Source§

fn visit_materialized_view_option_name_mut( &mut self, node: &'ast mut MaterializedViewOptionName, )

Source§

fn visit_mock_view_def_mut(&mut self, node: &'ast mut MockViewDef<T>)

Source§

fn visit_mut_rec_block_mut(&mut self, node: &'ast mut MutRecBlock<T>)

Source§

fn visit_mut_rec_block_option_mut( &mut self, node: &'ast mut MutRecBlockOption<T>, )

Source§

fn visit_mut_rec_block_option_name_mut( &mut self, node: &'ast mut MutRecBlockOptionName, )

Source§

fn visit_my_sql_config_option_mut( &mut self, node: &'ast mut MySqlConfigOption<T>, )

Source§

fn visit_my_sql_config_option_name_mut( &mut self, node: &'ast mut MySqlConfigOptionName, )

Source§

fn visit_named_plan_mut(&mut self, node: &'ast mut NamedPlan)

Source§

fn visit_network_policy_option_mut( &mut self, node: &'ast mut NetworkPolicyOption<T>, )

Source§

fn visit_network_policy_option_name_mut( &mut self, node: &'ast mut NetworkPolicyOptionName, )

Source§

fn visit_network_policy_rule_definition_mut( &mut self, node: &'ast mut NetworkPolicyRuleDefinition<T>, )

Source§

fn visit_network_policy_rule_option_mut( &mut self, node: &'ast mut NetworkPolicyRuleOption<T>, )

Source§

fn visit_network_policy_rule_option_name_mut( &mut self, node: &'ast mut NetworkPolicyRuleOptionName, )

Source§

fn visit_notice_severity_mut(&mut self, node: &'ast mut NoticeSeverity)

Source§

fn visit_object_type_mut(&mut self, node: &'ast mut ObjectType)

Source§

fn visit_op_mut(&mut self, node: &'ast mut Op)

Source§

fn visit_order_by_expr_mut(&mut self, node: &'ast mut OrderByExpr<T>)

Source§

fn visit_pg_config_option_mut(&mut self, node: &'ast mut PgConfigOption<T>)

Source§

fn visit_pg_config_option_name_mut( &mut self, node: &'ast mut PgConfigOptionName, )

Source§

fn visit_prepare_statement_mut(&mut self, node: &'ast mut PrepareStatement<T>)

Source§

fn visit_privilege_mut(&mut self, node: &'ast mut Privilege)

Source§

fn visit_privilege_specification_mut( &mut self, node: &'ast mut PrivilegeSpecification, )

Source§

fn visit_protobuf_schema_mut(&mut self, node: &'ast mut ProtobufSchema<T>)

Source§

fn visit_qualified_replica_mut(&mut self, node: &'ast mut QualifiedReplica)

Source§

fn visit_raise_statement_mut(&mut self, node: &'ast mut RaiseStatement)

Source§

fn visit_reader_schema_selection_strategy_mut( &mut self, node: &'ast mut ReaderSchemaSelectionStrategy, )

Source§

fn visit_reassign_owned_statement_mut( &mut self, node: &'ast mut ReassignOwnedStatement<T>, )

Source§

fn visit_refresh_at_option_value_mut( &mut self, node: &'ast mut RefreshAtOptionValue<T>, )

Source§

fn visit_refresh_every_option_value_mut( &mut self, node: &'ast mut RefreshEveryOptionValue<T>, )

Source§

fn visit_refresh_option_value_mut( &mut self, node: &'ast mut RefreshOptionValue<T>, )

Source§

fn visit_replica_definition_mut(&mut self, node: &'ast mut ReplicaDefinition<T>)

Source§

fn visit_replica_option_mut(&mut self, node: &'ast mut ReplicaOption<T>)

Source§

fn visit_replica_option_name_mut(&mut self, node: &'ast mut ReplicaOptionName)

Source§

fn visit_reset_variable_statement_mut( &mut self, node: &'ast mut ResetVariableStatement, )

Source§

fn visit_revoke_privileges_statement_mut( &mut self, node: &'ast mut RevokePrivilegesStatement<T>, )

Source§

fn visit_revoke_role_statement_mut( &mut self, node: &'ast mut RevokeRoleStatement<T>, )

Source§

fn visit_role_attribute_mut(&mut self, node: &'ast mut RoleAttribute)

Source§

fn visit_rollback_statement_mut(&mut self, node: &'ast mut RollbackStatement)

Source§

fn visit_schema_mut(&mut self, node: &'ast mut Schema)

Source§

fn visit_select_mut(&mut self, node: &'ast mut Select<T>)

Source§

fn visit_select_item_mut(&mut self, node: &'ast mut SelectItem<T>)

Source§

fn visit_select_option_mut(&mut self, node: &'ast mut SelectOption<T>)

Source§

fn visit_select_option_name_mut(&mut self, node: &'ast mut SelectOptionName)

Source§

fn visit_select_statement_mut(&mut self, node: &'ast mut SelectStatement<T>)

Source§

fn visit_set_expr_mut(&mut self, node: &'ast mut SetExpr<T>)

Source§

fn visit_set_operator_mut(&mut self, node: &'ast mut SetOperator)

Source§

fn visit_set_role_var_mut(&mut self, node: &'ast mut SetRoleVar)

Source§

fn visit_set_transaction_statement_mut( &mut self, node: &'ast mut SetTransactionStatement, )

Source§

fn visit_set_variable_statement_mut( &mut self, node: &'ast mut SetVariableStatement, )

Source§

fn visit_set_variable_to_mut(&mut self, node: &'ast mut SetVariableTo)

Source§

fn visit_set_variable_value_mut(&mut self, node: &'ast mut SetVariableValue)

Source§

fn visit_show_columns_statement_mut( &mut self, node: &'ast mut ShowColumnsStatement<T>, )

Source§

fn visit_show_create_cluster_statement_mut( &mut self, node: &'ast mut ShowCreateClusterStatement<T>, )

Source§

fn visit_show_create_connection_statement_mut( &mut self, node: &'ast mut ShowCreateConnectionStatement<T>, )

Source§

fn visit_show_create_index_statement_mut( &mut self, node: &'ast mut ShowCreateIndexStatement<T>, )

Source§

fn visit_show_create_materialized_view_statement_mut( &mut self, node: &'ast mut ShowCreateMaterializedViewStatement<T>, )

Source§

fn visit_show_create_sink_statement_mut( &mut self, node: &'ast mut ShowCreateSinkStatement<T>, )

Source§

fn visit_show_create_source_statement_mut( &mut self, node: &'ast mut ShowCreateSourceStatement<T>, )

Source§

fn visit_show_create_table_statement_mut( &mut self, node: &'ast mut ShowCreateTableStatement<T>, )

Source§

fn visit_show_create_type_statement_mut( &mut self, node: &'ast mut ShowCreateTypeStatement<T>, )

Source§

fn visit_show_create_view_statement_mut( &mut self, node: &'ast mut ShowCreateViewStatement<T>, )

Source§

fn visit_show_object_type_mut(&mut self, node: &'ast mut ShowObjectType<T>)

Source§

fn visit_show_objects_statement_mut( &mut self, node: &'ast mut ShowObjectsStatement<T>, )

Source§

fn visit_show_statement_mut(&mut self, node: &'ast mut ShowStatement<T>)

Source§

fn visit_show_statement_filter_mut( &mut self, node: &'ast mut ShowStatementFilter<T>, )

Source§

fn visit_show_variable_statement_mut( &mut self, node: &'ast mut ShowVariableStatement, )

Source§

fn visit_sink_envelope_mut(&mut self, node: &'ast mut SinkEnvelope)

Source§

fn visit_sink_key_mut(&mut self, node: &'ast mut SinkKey)

Source§

fn visit_source_envelope_mut(&mut self, node: &'ast mut SourceEnvelope)

Source§

fn visit_source_error_policy_mut(&mut self, node: &'ast mut SourceErrorPolicy)

Source§

fn visit_source_include_metadata_mut( &mut self, node: &'ast mut SourceIncludeMetadata, )

Source§

fn visit_sql_server_config_option_mut( &mut self, node: &'ast mut SqlServerConfigOption<T>, )

Source§

fn visit_sql_server_config_option_name_mut( &mut self, node: &'ast mut SqlServerConfigOptionName, )

Source§

fn visit_start_transaction_statement_mut( &mut self, node: &'ast mut StartTransactionStatement, )

Source§

fn visit_statement_mut(&mut self, node: &'ast mut Statement<T>)

Source§

fn visit_subscribe_option_mut(&mut self, node: &'ast mut SubscribeOption<T>)

Source§

fn visit_subscribe_option_name_mut( &mut self, node: &'ast mut SubscribeOptionName, )

Source§

fn visit_subscribe_output_mut(&mut self, node: &'ast mut SubscribeOutput<T>)

Source§

fn visit_subscribe_relation_mut(&mut self, node: &'ast mut SubscribeRelation<T>)

Source§

fn visit_subscribe_statement_mut( &mut self, node: &'ast mut SubscribeStatement<T>, )

Source§

fn visit_subscript_position_mut(&mut self, node: &'ast mut SubscriptPosition<T>)

Source§

fn visit_system_object_type_mut(&mut self, node: &'ast mut SystemObjectType)

Source§

fn visit_cluster_name_mut( &mut self, node: &'ast mut <T as AstInfo>::ClusterName, )

Source§

fn visit_column_reference_mut( &mut self, node: &'ast mut <T as AstInfo>::ColumnReference, )

Source§

fn visit_cte_id_mut(&mut self, node: &'ast mut <T as AstInfo>::CteId)

Source§

fn visit_data_type_mut(&mut self, node: &'ast mut <T as AstInfo>::DataType)

Source§

fn visit_database_name_mut( &mut self, node: &'ast mut <T as AstInfo>::DatabaseName, )

Source§

fn visit_item_name_mut(&mut self, node: &'ast mut <T as AstInfo>::ItemName)

Source§

fn visit_nested_statement_mut( &mut self, node: &'ast mut <T as AstInfo>::NestedStatement, )

Source§

fn visit_network_policy_name_mut( &mut self, node: &'ast mut <T as AstInfo>::NetworkPolicyName, )

Source§

fn visit_object_name_mut(&mut self, node: &'ast mut <T as AstInfo>::ObjectName)

Source§

fn visit_role_name_mut(&mut self, node: &'ast mut <T as AstInfo>::RoleName)

Source§

fn visit_schema_name_mut(&mut self, node: &'ast mut <T as AstInfo>::SchemaName)

Source§

fn visit_table_alias_mut(&mut self, node: &'ast mut TableAlias)

Source§

fn visit_table_constraint_mut(&mut self, node: &'ast mut TableConstraint<T>)

Source§

fn visit_table_from_source_columns_mut( &mut self, node: &'ast mut TableFromSourceColumns<T>, )

Source§

fn visit_table_from_source_option_mut( &mut self, node: &'ast mut TableFromSourceOption<T>, )

Source§

fn visit_table_from_source_option_name_mut( &mut self, node: &'ast mut TableFromSourceOptionName, )

Source§

fn visit_table_option_mut(&mut self, node: &'ast mut TableOption<T>)

Source§

fn visit_table_option_name_mut(&mut self, node: &'ast mut TableOptionName)

Source§

fn visit_table_with_joins_mut(&mut self, node: &'ast mut TableWithJoins<T>)

Source§

fn visit_target_role_specification_mut( &mut self, node: &'ast mut TargetRoleSpecification<T>, )

Source§

fn visit_transaction_access_mode_mut( &mut self, node: &'ast mut TransactionAccessMode, )

Source§

fn visit_transaction_isolation_level_mut( &mut self, node: &'ast mut TransactionIsolationLevel, )

Source§

fn visit_transaction_mode_mut(&mut self, node: &'ast mut TransactionMode)

Source§

fn visit_unresolved_database_name_mut( &mut self, node: &'ast mut UnresolvedDatabaseName, )

Source§

fn visit_unresolved_item_name_mut(&mut self, node: &'ast mut UnresolvedItemName)

Source§

fn visit_unresolved_object_name_mut( &mut self, node: &'ast mut UnresolvedObjectName, )

Source§

fn visit_unresolved_schema_name_mut( &mut self, node: &'ast mut UnresolvedSchemaName, )

Source§

fn visit_update_statement_mut(&mut self, node: &'ast mut UpdateStatement<T>)

Source§

fn visit_validate_connection_statement_mut( &mut self, node: &'ast mut ValidateConnectionStatement<T>, )

Source§

fn visit_value_mut(&mut self, node: &'ast mut Value)

Source§

fn visit_value_error_mut(&mut self, node: &'ast mut ValueError)

Source§

fn visit_values_mut(&mut self, node: &'ast mut Values<T>)

Source§

fn visit_version_mut(&mut self, node: &'ast mut Version)

Source§

fn visit_view_definition_mut(&mut self, node: &'ast mut ViewDefinition<T>)

Source§

fn visit_window_frame_mut(&mut self, node: &'ast mut WindowFrame)

Source§

fn visit_window_frame_bound_mut(&mut self, node: &'ast mut WindowFrameBound)

Source§

fn visit_window_frame_units_mut(&mut self, node: &'ast mut WindowFrameUnits)

Source§

fn visit_window_spec_mut(&mut self, node: &'ast mut WindowSpec<T>)

Source§

fn visit_with_option_value_mut(&mut self, node: &'ast mut WithOptionValue<T>)

Auto Trait Implementations§

§

impl<T> Freeze for NormalizingVisitor<T>
where T: Freeze,

§

impl<T> RefUnwindSafe for NormalizingVisitor<T>
where T: RefUnwindSafe,

§

impl<T> Send for NormalizingVisitor<T>
where T: Send,

§

impl<T> Sync for NormalizingVisitor<T>
where T: Sync,

§

impl<T> Unpin for NormalizingVisitor<T>
where T: Unpin,

§

impl<T> UnsafeUnpin for NormalizingVisitor<T>
where T: UnsafeUnpin,

§

impl<T> UnwindSafe for NormalizingVisitor<T>
where T: UnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<U> As for U

Source§

fn as_<T>(self) -> T
where T: CastFrom<U>,

Casts self to type T. The semantics of numeric casting with the as operator are followed, so <T as As>::as_::<U> can be used in the same way as T as U for numeric conversions. Read more
Source§

impl<T> AsAny for T
where T: Any,

Source§

fn as_any(&self) -> &(dyn Any + 'static)

Source§

impl<T> AsAny for T
where T: Any,

Source§

fn as_any(&self) -> &(dyn Any + 'static)

Source§

fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

Source§

fn type_name(&self) -> &'static str

Gets the type name of self
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T, U> CastInto<U> for T
where U: CastFrom<T>,

Source§

fn cast_into(self) -> U

Performs the cast.
Source§

impl<T> Conv for T

Source§

fn conv<T>(self) -> T
where Self: Into<T>,

Converts self into T using Into<T>. Read more
Source§

impl<T> Downcast for T
where T: AsAny + ?Sized,

Source§

fn is<T>(&self) -> bool
where T: AsAny,

Returns true if the boxed type is the same as T. Read more
Source§

fn downcast_ref<T>(&self) -> Option<&T>
where T: AsAny,

Forward to the method defined on the type Any.
Source§

fn downcast_mut<T>(&mut self) -> Option<&mut T>
where T: AsAny,

Forward to the method defined on the type Any.
Source§

impl<T> FmtForward for T

Source§

fn fmt_binary(self) -> FmtBinary<Self>
where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
Source§

fn fmt_display(self) -> FmtDisplay<Self>
where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
Source§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>
where Self: LowerExp,

Causes self to use its LowerExp implementation when Debug-formatted.
Source§

fn fmt_lower_hex(self) -> FmtLowerHex<Self>
where Self: LowerHex,

Causes self to use its LowerHex implementation when Debug-formatted.
Source§

fn fmt_octal(self) -> FmtOctal<Self>
where Self: Octal,

Causes self to use its Octal implementation when Debug-formatted.
Source§

fn fmt_pointer(self) -> FmtPointer<Self>
where Self: Pointer,

Causes self to use its Pointer implementation when Debug-formatted.
Source§

fn fmt_upper_exp(self) -> FmtUpperExp<Self>
where Self: UpperExp,

Causes self to use its UpperExp implementation when Debug-formatted.
Source§

fn fmt_upper_hex(self) -> FmtUpperHex<Self>
where Self: UpperHex,

Causes self to use its UpperHex implementation when Debug-formatted.
Source§

fn fmt_list(self) -> FmtList<Self>
where &'a Self: for<'a> IntoIterator,

Formats each item in a sequence. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> FutureExt for T

Source§

fn with_context(self, otel_cx: Context) -> WithContext<Self>

Attaches the provided Context to this type, returning a WithContext wrapper. Read more
Source§

fn with_current_context(self) -> WithContext<Self>

Attaches the current Context to this type, returning a WithContext wrapper. Read more
Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> IntoRequest<T> for T

Source§

fn into_request(self) -> Request<T>

Wrap the input message T in a tonic::Request
Source§

impl<Unshared, Shared> IntoShared<Shared> for Unshared
where Shared: FromUnshared<Unshared>,

Source§

fn into_shared(self) -> Shared

Creates a shared type from an unshared type.
Source§

impl<L> LayerExt<L> for L

Source§

fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>
where L: Layer<S>,

Applies the layer to a service and wraps it in Layered.
Source§

impl<T, U> OverrideFrom<Option<&T>> for U
where U: OverrideFrom<T>,

Source§

fn override_from(self, layer: &Option<&T>) -> U

Override the configuration represented by Self with values from the given layer.
Source§

impl<D> OwoColorize for D

Source§

fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>
where C: Color,

Set the foreground color generically Read more
Source§

fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>
where C: Color,

Set the background color generically. Read more
Source§

fn black(&self) -> FgColorDisplay<'_, Black, Self>

Change the foreground color to black
Source§

fn on_black(&self) -> BgColorDisplay<'_, Black, Self>

Change the background color to black
Source§

fn red(&self) -> FgColorDisplay<'_, Red, Self>

Change the foreground color to red
Source§

fn on_red(&self) -> BgColorDisplay<'_, Red, Self>

Change the background color to red
Source§

fn green(&self) -> FgColorDisplay<'_, Green, Self>

Change the foreground color to green
Source§

fn on_green(&self) -> BgColorDisplay<'_, Green, Self>

Change the background color to green
Source§

fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>

Change the foreground color to yellow
Source§

fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>

Change the background color to yellow
Source§

fn blue(&self) -> FgColorDisplay<'_, Blue, Self>

Change the foreground color to blue
Source§

fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>

Change the background color to blue
Source§

fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>

Change the foreground color to magenta
Source§

fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>

Change the background color to magenta
Source§

fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>

Change the foreground color to purple
Source§

fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>

Change the background color to purple
Source§

fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>

Change the foreground color to cyan
Source§

fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>

Change the background color to cyan
Source§

fn white(&self) -> FgColorDisplay<'_, White, Self>

Change the foreground color to white
Source§

fn on_white(&self) -> BgColorDisplay<'_, White, Self>

Change the background color to white
Source§

fn default_color(&self) -> FgColorDisplay<'_, Default, Self>

Change the foreground color to the terminal default
Source§

fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>

Change the background color to the terminal default
Source§

fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>

Change the foreground color to bright black
Source§

fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>

Change the background color to bright black
Source§

fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>

Change the foreground color to bright red
Source§

fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>

Change the background color to bright red
Source§

fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>

Change the foreground color to bright green
Source§

fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>

Change the background color to bright green
Source§

fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>

Change the foreground color to bright yellow
Source§

fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>

Change the background color to bright yellow
Source§

fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>

Change the foreground color to bright blue
Source§

fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>

Change the background color to bright blue
Source§

fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>

Change the foreground color to bright magenta
Source§

fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>

Change the background color to bright magenta
Source§

fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>

Change the foreground color to bright purple
Source§

fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>

Change the background color to bright purple
Source§

fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>

Change the foreground color to bright cyan
Source§

fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>

Change the background color to bright cyan
Source§

fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>

Change the foreground color to bright white
Source§

fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>

Change the background color to bright white
Source§

fn bold(&self) -> BoldDisplay<'_, Self>

Make the text bold
Source§

fn dimmed(&self) -> DimDisplay<'_, Self>

Make the text dim
Source§

fn italic(&self) -> ItalicDisplay<'_, Self>

Make the text italicized
Source§

fn underline(&self) -> UnderlineDisplay<'_, Self>

Make the text underlined
Make the text blink
Make the text blink (but fast!)
Source§

fn reversed(&self) -> ReversedDisplay<'_, Self>

Swap the foreground and background colors
Source§

fn hidden(&self) -> HiddenDisplay<'_, Self>

Hide the text
Source§

fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>

Cross out the text
Source§

fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>
where Color: DynColor,

Set the foreground color at runtime. Only use if you do not know which color will be used at compile-time. If the color is constant, use either OwoColorize::fg or a color-specific method, such as OwoColorize::green, Read more
Source§

fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>
where Color: DynColor,

Set the background color at runtime. Only use if you do not know what color to use at compile-time. If the color is constant, use either OwoColorize::bg or a color-specific method, such as OwoColorize::on_yellow, Read more
Source§

fn fg_rgb<const R: u8, const G: u8, const B: u8>( &self, ) -> FgColorDisplay<'_, CustomColor<R, G, B>, Self>

Set the foreground color to a specific RGB value.
Source§

fn bg_rgb<const R: u8, const G: u8, const B: u8>( &self, ) -> BgColorDisplay<'_, CustomColor<R, G, B>, Self>

Set the background color to a specific RGB value.
Source§

fn truecolor(&self, r: u8, g: u8, b: u8) -> FgDynColorDisplay<'_, Rgb, Self>

Sets the foreground color to an RGB value.
Source§

fn on_truecolor(&self, r: u8, g: u8, b: u8) -> BgDynColorDisplay<'_, Rgb, Self>

Sets the background color to an RGB value.
Source§

fn style(&self, style: Style) -> Styled<&Self>

Apply a runtime-determined style
Source§

fn if_supports_color<'a, Out, ApplyFn>( &'a self, stream: impl Into<Stream>, apply: ApplyFn, ) -> SupportsColorsDisplay<'a, Self, Out, ApplyFn>
where ApplyFn: Fn(&'a Self) -> Out,

Apply a given transformation function to all formatters if the given stream supports at least basic ANSI colors, allowing you to conditionally apply given styles/colors. Read more
Source§

impl<T> Paint for T
where T: ?Sized,

Source§

fn fg(&self, value: Color) -> Painted<&T>

Returns a styled value derived from self with the foreground set to value.

This method should be used rarely. Instead, prefer to use color-specific builder methods like red() and green(), which have the same functionality but are pithier.

§Example

Set foreground color to white using fg():

use yansi::{Paint, Color};

painted.fg(Color::White);

Set foreground color to white using white().

use yansi::Paint;

painted.white();
Source§

fn primary(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Primary].

§Example
println!("{}", value.primary());
Source§

fn fixed(&self, color: u8) -> Painted<&T>

Returns self with the fg() set to [Color :: Fixed].

§Example
println!("{}", value.fixed(color));
Source§

fn rgb(&self, r: u8, g: u8, b: u8) -> Painted<&T>

Returns self with the fg() set to [Color :: Rgb].

§Example
println!("{}", value.rgb(r, g, b));
Source§

fn black(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Black].

§Example
println!("{}", value.black());
Source§

fn red(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Red].

§Example
println!("{}", value.red());
Source§

fn green(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Green].

§Example
println!("{}", value.green());
Source§

fn yellow(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Yellow].

§Example
println!("{}", value.yellow());
Source§

fn blue(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Blue].

§Example
println!("{}", value.blue());
Source§

fn magenta(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Magenta].

§Example
println!("{}", value.magenta());
Source§

fn cyan(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Cyan].

§Example
println!("{}", value.cyan());
Source§

fn white(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: White].

§Example
println!("{}", value.white());
Source§

fn bright_black(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightBlack].

§Example
println!("{}", value.bright_black());
Source§

fn bright_red(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightRed].

§Example
println!("{}", value.bright_red());
Source§

fn bright_green(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightGreen].

§Example
println!("{}", value.bright_green());
Source§

fn bright_yellow(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightYellow].

§Example
println!("{}", value.bright_yellow());
Source§

fn bright_blue(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightBlue].

§Example
println!("{}", value.bright_blue());
Source§

fn bright_magenta(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightMagenta].

§Example
println!("{}", value.bright_magenta());
Source§

fn bright_cyan(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightCyan].

§Example
println!("{}", value.bright_cyan());
Source§

fn bright_white(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightWhite].

§Example
println!("{}", value.bright_white());
Source§

fn bg(&self, value: Color) -> Painted<&T>

Returns a styled value derived from self with the background set to value.

This method should be used rarely. Instead, prefer to use color-specific builder methods like on_red() and on_green(), which have the same functionality but are pithier.

§Example

Set background color to red using fg():

use yansi::{Paint, Color};

painted.bg(Color::Red);

Set background color to red using on_red().

use yansi::Paint;

painted.on_red();
Source§

fn on_primary(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Primary].

§Example
println!("{}", value.on_primary());
Source§

fn on_fixed(&self, color: u8) -> Painted<&T>

Returns self with the bg() set to [Color :: Fixed].

§Example
println!("{}", value.on_fixed(color));
Source§

fn on_rgb(&self, r: u8, g: u8, b: u8) -> Painted<&T>

Returns self with the bg() set to [Color :: Rgb].

§Example
println!("{}", value.on_rgb(r, g, b));
Source§

fn on_black(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Black].

§Example
println!("{}", value.on_black());
Source§

fn on_red(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Red].

§Example
println!("{}", value.on_red());
Source§

fn on_green(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Green].

§Example
println!("{}", value.on_green());
Source§

fn on_yellow(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Yellow].

§Example
println!("{}", value.on_yellow());
Source§

fn on_blue(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Blue].

§Example
println!("{}", value.on_blue());
Source§

fn on_magenta(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Magenta].

§Example
println!("{}", value.on_magenta());
Source§

fn on_cyan(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Cyan].

§Example
println!("{}", value.on_cyan());
Source§

fn on_white(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: White].

§Example
println!("{}", value.on_white());
Source§

fn on_bright_black(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightBlack].

§Example
println!("{}", value.on_bright_black());
Source§

fn on_bright_red(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightRed].

§Example
println!("{}", value.on_bright_red());
Source§

fn on_bright_green(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightGreen].

§Example
println!("{}", value.on_bright_green());
Source§

fn on_bright_yellow(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightYellow].

§Example
println!("{}", value.on_bright_yellow());
Source§

fn on_bright_blue(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightBlue].

§Example
println!("{}", value.on_bright_blue());
Source§

fn on_bright_magenta(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightMagenta].

§Example
println!("{}", value.on_bright_magenta());
Source§

fn on_bright_cyan(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightCyan].

§Example
println!("{}", value.on_bright_cyan());
Source§

fn on_bright_white(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightWhite].

§Example
println!("{}", value.on_bright_white());
Source§

fn attr(&self, value: Attribute) -> Painted<&T>

Enables the styling Attribute value.

This method should be used rarely. Instead, prefer to use attribute-specific builder methods like bold() and underline(), which have the same functionality but are pithier.

§Example

Make text bold using attr():

use yansi::{Paint, Attribute};

painted.attr(Attribute::Bold);

Make text bold using using bold().

use yansi::Paint;

painted.bold();
Source§

fn bold(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Bold].

§Example
println!("{}", value.bold());
Source§

fn dim(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Dim].

§Example
println!("{}", value.dim());
Source§

fn italic(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Italic].

§Example
println!("{}", value.italic());
Source§

fn underline(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Underline].

§Example
println!("{}", value.underline());

Returns self with the attr() set to [Attribute :: Blink].

§Example
println!("{}", value.blink());

Returns self with the attr() set to [Attribute :: RapidBlink].

§Example
println!("{}", value.rapid_blink());
Source§

fn invert(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Invert].

§Example
println!("{}", value.invert());
Source§

fn conceal(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Conceal].

§Example
println!("{}", value.conceal());
Source§

fn strike(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Strike].

§Example
println!("{}", value.strike());
Source§

fn quirk(&self, value: Quirk) -> Painted<&T>

Enables the yansi Quirk value.

This method should be used rarely. Instead, prefer to use quirk-specific builder methods like mask() and wrap(), which have the same functionality but are pithier.

§Example

Enable wrapping using .quirk():

use yansi::{Paint, Quirk};

painted.quirk(Quirk::Wrap);

Enable wrapping using wrap().

use yansi::Paint;

painted.wrap();
Source§

fn mask(&self) -> Painted<&T>

Returns self with the quirk() set to [Quirk :: Mask].

§Example
println!("{}", value.mask());
Source§

fn wrap(&self) -> Painted<&T>

Returns self with the quirk() set to [Quirk :: Wrap].

§Example
println!("{}", value.wrap());
Source§

fn linger(&self) -> Painted<&T>

Returns self with the quirk() set to [Quirk :: Linger].

§Example
println!("{}", value.linger());
Source§

fn clear(&self) -> Painted<&T>

👎Deprecated since 1.0.1:

renamed to resetting() due to conflicts with Vec::clear(). The clear() method will be removed in a future release.

Returns self with the quirk() set to [Quirk :: Clear].

§Example
println!("{}", value.clear());
Source§

fn resetting(&self) -> Painted<&T>

Returns self with the quirk() set to [Quirk :: Resetting].

§Example
println!("{}", value.resetting());
Source§

fn bright(&self) -> Painted<&T>

Returns self with the quirk() set to [Quirk :: Bright].

§Example
println!("{}", value.bright());
Source§

fn on_bright(&self) -> Painted<&T>

Returns self with the quirk() set to [Quirk :: OnBright].

§Example
println!("{}", value.on_bright());
Source§

fn whenever(&self, value: Condition) -> Painted<&T>

Conditionally enable styling based on whether the Condition value applies. Replaces any previous condition.

See the crate level docs for more details.

§Example

Enable styling painted only when both stdout and stderr are TTYs:

use yansi::{Paint, Condition};

painted.red().on_yellow().whenever(Condition::STDOUTERR_ARE_TTY);
Source§

fn new(self) -> Painted<Self>
where Self: Sized,

Create a new Painted with a default Style. Read more
Source§

fn paint<S>(&self, style: S) -> Painted<&Self>
where S: Into<Style>,

Apply a style wholesale to self. Any previous style is replaced. Read more
Source§

impl<T> Pipe for T
where T: ?Sized,

Source§

fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> R
where Self: Sized,

Pipes by value. This is generally the method you want to use. Read more
Source§

fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> R
where R: 'a,

Borrows self and passes that borrow into the pipe function. Read more
Source§

fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> R
where R: 'a,

Mutably borrows self and passes that borrow into the pipe function. Read more
Source§

fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
where Self: Borrow<B>, B: 'a + ?Sized, R: 'a,

Borrows self, then passes self.borrow() into the pipe function. Read more
Source§

fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
where Self: BorrowMut<B>, B: 'a + ?Sized, R: 'a,

Mutably borrows self, then passes self.borrow_mut() into the pipe function. Read more
Source§

fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
where Self: AsRef<U>, U: 'a + ?Sized, R: 'a,

Borrows self, then passes self.as_ref() into the pipe function.
Source§

fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
where Self: AsMut<U>, U: 'a + ?Sized, R: 'a,

Mutably borrows self, then passes self.as_mut() into the pipe function.
Source§

fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
where Self: Deref<Target = T>, T: 'a + ?Sized, R: 'a,

Borrows self, then passes self.deref() into the pipe function.
Source§

fn pipe_deref_mut<'a, T, R>( &'a mut self, func: impl FnOnce(&'a mut T) -> R, ) -> R
where Self: DerefMut<Target = T> + Deref, T: 'a + ?Sized, R: 'a,

Mutably borrows self, then passes self.deref_mut() into the pipe function.
Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<P, R> ProtoType<R> for P
where R: RustType<P>,

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<'a, S, T> Semigroup<&'a S> for T
where T: Semigroup<S>,

Source§

fn plus_equals(&mut self, rhs: &&'a S)

The method of std::ops::AddAssign, for types that do not implement AddAssign.
Source§

impl<T> ServiceExt for T

Source§

fn map_response_body<F>(self, f: F) -> MapResponseBody<Self, F>
where Self: Sized,

Apply a transformation to the response body. Read more
Source§

fn decompression(self) -> Decompression<Self>
where Self: Sized,

Decompress response bodies. Read more
Source§

fn trace_for_http(self) -> Trace<Self, SharedClassifier<ServerErrorsAsFailures>>
where Self: Sized,

High level tracing that classifies responses using HTTP status codes. Read more
Source§

fn trace_for_grpc(self) -> Trace<Self, SharedClassifier<GrpcErrorsAsFailures>>
where Self: Sized,

High level tracing that classifies responses using gRPC headers. Read more
Source§

fn follow_redirects(self) -> FollowRedirect<Self>
where Self: Sized,

Follow redirect resposes using the Standard policy. Read more
Source§

impl<T> Tap for T

Source§

fn tap(self, func: impl FnOnce(&Self)) -> Self

Immutable access to a value. Read more
Source§

fn tap_mut(self, func: impl FnOnce(&mut Self)) -> Self

Mutable access to a value. Read more
Source§

fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
where Self: Borrow<B>, B: ?Sized,

Immutable access to the Borrow<B> of a value. Read more
Source§

fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
where Self: BorrowMut<B>, B: ?Sized,

Mutable access to the BorrowMut<B> of a value. Read more
Source§

fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
where Self: AsRef<R>, R: ?Sized,

Immutable access to the AsRef<R> view of a value. Read more
Source§

fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
where Self: AsMut<R>, R: ?Sized,

Mutable access to the AsMut<R> view of a value. Read more
Source§

fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
where Self: Deref<Target = T>, T: ?Sized,

Immutable access to the Deref::Target of a value. Read more
Source§

fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
where Self: DerefMut<Target = T> + Deref, T: ?Sized,

Mutable access to the Deref::Target of a value. Read more
Source§

fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self

Calls .tap() only in debug builds, and is erased in release builds.
Source§

fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self

Calls .tap_mut() only in debug builds, and is erased in release builds.
Source§

fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
where Self: Borrow<B>, B: ?Sized,

Calls .tap_borrow() only in debug builds, and is erased in release builds.
Source§

fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
where Self: BorrowMut<B>, B: ?Sized,

Calls .tap_borrow_mut() only in debug builds, and is erased in release builds.
Source§

fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
where Self: AsRef<R>, R: ?Sized,

Calls .tap_ref() only in debug builds, and is erased in release builds.
Source§

fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
where Self: AsMut<R>, R: ?Sized,

Calls .tap_ref_mut() only in debug builds, and is erased in release builds.
Source§

fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
where Self: Deref<Target = T>, T: ?Sized,

Calls .tap_deref() only in debug builds, and is erased in release builds.
Source§

fn tap_deref_mut_dbg<T>(self, func: impl FnOnce(&mut T)) -> Self
where Self: DerefMut<Target = T> + Deref, T: ?Sized,

Calls .tap_deref_mut() only in debug builds, and is erased in release builds.
Source§

impl<T> TryConv for T

Source§

fn try_conv<T>(self) -> Result<T, Self::Error>
where Self: TryInto<T>,

Attempts to convert self into T using TryInto<T>. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> Allocation for T
where T: RefUnwindSafe + Send + Sync,

Source§

impl<T> MaybeSend for T
where T: Send,