Struct mz_environmentd::environmentd::main::Args

source ·
pub struct Args {
Show 71 fields unsafe_mode: bool, all_features: bool, sql_listen_addr: SocketAddr, http_listen_addr: SocketAddr, internal_sql_listen_addr: SocketAddr, internal_http_listen_addr: SocketAddr, internal_persist_pubsub_listen_addr: SocketAddr, cors_allowed_origin: Vec<HeaderValue>, announce_egress_address: Vec<IpNet>, http_host_name: Option<String>, internal_console_redirect_url: Option<String>, tls: TlsCliArgs, frontegg: FronteggCliArgs, orchestrator: OrchestratorKind, orchestrator_kubernetes_scheduler_name: Option<String>, orchestrator_kubernetes_service_label: Vec<KeyValueArg<String, String>>, orchestrator_kubernetes_service_node_selector: Vec<KeyValueArg<String, String>>, orchestrator_kubernetes_service_account: Option<String>, orchestrator_kubernetes_context: String, orchestrator_kubernetes_image_pull_policy: KubernetesImagePullPolicy, orchestrator_kubernetes_init_container_image: Option<String>, orchestrator_kubernetes_ephemeral_volume_class: Option<String>, orchestrator_kubernetes_service_fs_group: Option<i64>, orchestrator_kubernetes_name_prefix: Option<String>, orchestrator_kubernetes_disable_pod_metrics_collection: bool, orchestrator_kubernetes_enable_prometheus_scrape_annotations: bool, orchestrator_process_wrapper: Option<String>, orchestrator_process_secrets_directory: Option<PathBuf>, orchestrator_process_propagate_crashes: bool, orchestrator_process_tcp_proxy_listen_addr: Option<IpAddr>, orchestrator_process_prometheus_service_discovery_directory: Option<PathBuf>, orchestrator_process_scratch_directory: Option<PathBuf>, orchestrator_kubernetes_coverage: bool, secrets_controller: SecretsControllerKind, aws_secrets_controller_tags: Vec<KeyValueArg<String, String>>, clusterd_image: Option<String>, deploy_generation: u64, metadata_backend_url: Option<SensitiveUrl>, helm_chart_version: Option<String>, persist_blob_url: SensitiveUrl, persist_consensus_url: Option<SensitiveUrl>, persist_pubsub_url: String, persist_isolated_runtime_threads: Option<isize>, storage_usage_collection_interval_sec: Duration, storage_usage_retention_period: Option<Duration>, timestamp_oracle_url: Option<SensitiveUrl>, availability_zone: Vec<String>, cluster_replica_sizes: String, segment_api_key: Option<String>, segment_client_side: bool, launchdarkly_sdk_key: Option<String>, launchdarkly_key_map: Vec<KeyValueArg<String, String>>, config_sync_timeout: Duration, config_sync_loop_interval: Option<Duration>, scratch_directory: Option<PathBuf>, environment_id: EnvironmentId, bootstrap_role: Option<String>, bootstrap_default_cluster_replica_size: String, bootstrap_builtin_system_cluster_replica_size: String, bootstrap_builtin_catalog_server_cluster_replica_size: String, bootstrap_builtin_probe_cluster_replica_size: String, bootstrap_builtin_support_cluster_replica_size: String, bootstrap_builtin_analytics_cluster_replica_size: String, system_parameter_default: Vec<KeyValueArg<String, String>>, aws_account_id: Option<String>, aws_connection_role_arn: Option<String>, aws_external_id_prefix: Option<AwsExternalIdPrefix>, aws_privatelink_availability_zones: Option<Vec<String>>, tracing: TracingCliArgs, unsafe_builtin_table_fingerprint_whitespace: Option<UnsafeBuiltinTableFingerprintWhitespace>, unsafe_builtin_table_fingerprint_whitespace_version: usize,
}
Expand description

Manages a single Materialize environment.

Fields§

§unsafe_mode: bool

Enable unsafe features. Unsafe features are those that should never run in production but are appropriate for testing/local development.

§all_features: bool

Enables all feature flags, meant only as a tool for local development; this should never be enabled in CI.

§sql_listen_addr: SocketAddr

The address on which to listen for untrusted SQL connections.

Connections on this address are subject to encryption, authentication, and authorization as specified by the --tls-mode and --frontegg-auth options.

§http_listen_addr: SocketAddr

The address on which to listen for untrusted HTTP connections.

Connections on this address are subject to encryption, authentication, and authorization as specified by the --tls-mode and --frontegg-auth options.

§internal_sql_listen_addr: SocketAddr

The address on which to listen for trusted SQL connections.

Connections to this address are not subject to encryption, authentication, or access control. Care should be taken to not expose this address to the public internet or other unauthorized parties.

§internal_http_listen_addr: SocketAddr

The address on which to listen for trusted HTTP connections.

Connections to this address are not subject to encryption, authentication, or access control. Care should be taken to not expose the listen address to the public internet or other unauthorized parties.

§internal_persist_pubsub_listen_addr: SocketAddr

The address on which to listen for Persist PubSub connections.

Connections to this address are not subject to encryption, authentication, or access control. Care should be taken to not expose the listen address to the public internet or other unauthorized parties.

§cors_allowed_origin: Vec<HeaderValue>

Enable cross-origin resource sharing (CORS) for HTTP requests from the specified origin.

The default allows all local connections. “” allows all. “.domain.com” allows connections from any matching subdomain.

Wildcards in other positions (e.g., “https://.foo.com” or “https://foo..com”) have no effect.

§announce_egress_address: Vec<IpNet>

Public CIDR which the cloud environment has configured for egress.

§http_host_name: Option<String>

The external host name to connect to the HTTP server of this environment.

Presently used to render webhook URLs for end users in notices and the system catalog. Not used to establish connections directly.

§internal_console_redirect_url: Option<String>

The URL of the Materialize console to proxy from the /internal-console endpoint on the internal HTTP server.

§tls: TlsCliArgs

TLS arguments.

§frontegg: FronteggCliArgs

Frontegg arguments.

§orchestrator: OrchestratorKind

The service orchestrator implementation to use.

§orchestrator_kubernetes_scheduler_name: Option<String>

Name of a non-default Kubernetes scheduler, if any.

§orchestrator_kubernetes_service_label: Vec<KeyValueArg<String, String>>

Labels to apply to all services created by the Kubernetes orchestrator in the form KEY=VALUE.

§orchestrator_kubernetes_service_node_selector: Vec<KeyValueArg<String, String>>

Node selector to apply to all services created by the Kubernetes orchestrator in the form KEY=VALUE.

§orchestrator_kubernetes_service_account: Option<String>

The name of a service account to apply to all services created by the Kubernetes orchestrator.

§orchestrator_kubernetes_context: String

The Kubernetes context to use with the Kubernetes orchestrator.

This defaults to minikube to prevent disaster (e.g., connecting to a production cluster that happens to be the active Kubernetes context.)

§orchestrator_kubernetes_image_pull_policy: KubernetesImagePullPolicy

The image pull policy to use for services created by the Kubernetes orchestrator.

§orchestrator_kubernetes_init_container_image: Option<String>

The init container for services created by the Kubernetes orchestrator.

§orchestrator_kubernetes_ephemeral_volume_class: Option<String>

The Kubernetes StorageClass to use for the ephemeral volume attached to services that request disk.

If unspecified, the Kubernetes orchestrator will refuse to create services that request disk.

§orchestrator_kubernetes_service_fs_group: Option<i64>

The optional fs group for service’s pods’ securityContext.

§orchestrator_kubernetes_name_prefix: Option<String>

The prefix to prepend to all kubernetes object names.

§orchestrator_kubernetes_disable_pod_metrics_collection: bool

Whether to enable pod metrics collection.

§orchestrator_kubernetes_enable_prometheus_scrape_annotations: bool

Whether to annotate pods for prometheus service discovery.

§orchestrator_process_wrapper: Option<String>§orchestrator_process_secrets_directory: Option<PathBuf>

Where the process orchestrator should store secrets.

§orchestrator_process_propagate_crashes: bool

Whether the process orchestrator should handle crashes in child processes by crashing the parent process.

§orchestrator_process_tcp_proxy_listen_addr: Option<IpAddr>

An IP address on which the process orchestrator should bind TCP proxies for Unix domain sockets.

When specified, for each named port of each created service, the process orchestrator will bind a TCP listener to the specified address that proxies incoming connections to the underlying Unix domain socket. The allocated TCP port will be emitted as a tracing event.

The primary use is live debugging the running child services via tools that do not support Unix domain sockets (e.g., Prometheus, web browsers).

§orchestrator_process_prometheus_service_discovery_directory: Option<PathBuf>

A directory in which the process orchestrator should write Prometheus scrape targets, for use with Prometheus’s file-based service discovery.

Each namespaced orchestrator will maintain a single JSON file into the directory named NAMESPACE.json containing the scrape targets for all extant services. The scrape targets will use the TCP proxy address, as Prometheus does not support scraping over Unix domain sockets.

This option is ignored unless --orchestrator-process-tcp-proxy-listen-addr is set.

See also: https://prometheus.io/docs/guides/file-sd/

§orchestrator_process_scratch_directory: Option<PathBuf>

A scratch directory that orchestrated processes can use for ephemeral storage.

§orchestrator_kubernetes_coverage: bool

Whether to use coverage build and collect coverage information. Not to be used for production, only testing.

§secrets_controller: SecretsControllerKind

The secrets controller implementation to use.

§aws_secrets_controller_tags: Vec<KeyValueArg<String, String>>

The list of tags to be set on AWS Secrets Manager secrets created by the AWS secrets controller.

§clusterd_image: Option<String>

The clusterd image reference to use.

§deploy_generation: u64

A number representing the environment’s generation.

This is incremented to request that the new process perform a graceful transition of power from the prior generation.

§metadata_backend_url: Option<SensitiveUrl>

Can be provided in place of both persist_consensus_url and timestamp_oracle_url in order to point both at the same backend

§helm_chart_version: Option<String>

Helm chart version for self-hosted Materialize. This version does not correspond to the Materialize (core) version (v0.125.0), but is time-based for our twice-a-year helm chart releases: v25.1.Z, v25.2.Z in 2025, then v26.1.Z, v26.2.Z in 2026, and so on. This version is displayed in addition in SELECT mz_version() if set.

§persist_blob_url: SensitiveUrl

Where the persist library should store its blob data.

§persist_consensus_url: Option<SensitiveUrl>

Where the persist library should perform consensus.

§persist_pubsub_url: String

The Persist PubSub URL.

This URL is passed to clusterd for discovery of the Persist PubSub service.

§persist_isolated_runtime_threads: Option<isize>

The number of worker threads created for the IsolatedRuntime used for storage related tasks. A negative value will subtract from the number of threads returned by num_cpus::get.

§storage_usage_collection_interval_sec: Duration

The interval in seconds at which to collect storage usage information.

§storage_usage_retention_period: Option<Duration>

The period for which to retain usage records. Note that the retention period is only evaluated at server start time, so rebooting the server is required to discard old records.

§timestamp_oracle_url: Option<SensitiveUrl>

The PostgreSQL URL for the Postgres-backed timestamp oracle.

§availability_zone: Vec<String>

Availability zones in which storage and compute resources may be deployed.

§cluster_replica_sizes: String

A map from size name to resource allocations for cluster replicas.

§segment_api_key: Option<String>

An API key for Segment. Enables export of audit events to Segment.

§segment_client_side: bool

Whether the Segment client is being used on the client side (rather than the server side).

Enabling this causes the Segment server to record the IP address from which the event was sent.

§launchdarkly_sdk_key: Option<String>

An SDK key for LaunchDarkly.

Setting this in combination with Self::config_sync_loop_interval will enable synchronization of LaunchDarkly features with system configuration parameters.

§launchdarkly_key_map: Vec<KeyValueArg<String, String>>

A list of PARAM_NAME=KEY_NAME pairs from system parameter names to LaunchDarkly feature keys.

This is used (so far only for testing purposes) when propagating values from the latter to the former. The identity map is assumed for absent parameter names.

§config_sync_timeout: Duration

The duration at which the system parameter synchronization times out during startup.

§config_sync_loop_interval: Option<Duration>

The interval in seconds at which to synchronize system parameter values.

If this is not explicitly set, the loop that synchronizes LaunchDarkly features with system configuration parameters will not run even if Self::launchdarkly_sdk_key is present.

§scratch_directory: Option<PathBuf>

A scratch directory that can be used for ephemeral storage.

§environment_id: EnvironmentId§bootstrap_role: Option<String>

If set, a role with the provided name will be created with CREATEDB and CREATECLUSTER attributes. It will also have CREATE privileges on the materialize database, materialize.public schema, and quickstart cluster.

This option is meant for local development and testing to simplify the initial process of granting attributes and privileges to some default role.

§bootstrap_default_cluster_replica_size: String

The size of the default cluster replica if bootstrapping.

§bootstrap_builtin_system_cluster_replica_size: String

The size of the builtin system cluster replicas if bootstrapping.

§bootstrap_builtin_catalog_server_cluster_replica_size: String

The size of the builtin catalog server cluster replicas if bootstrapping.

§bootstrap_builtin_probe_cluster_replica_size: String

The size of the builtin probe cluster replicas if bootstrapping.

§bootstrap_builtin_support_cluster_replica_size: String

The size of the builtin support cluster replicas if bootstrapping.

§bootstrap_builtin_analytics_cluster_replica_size: String

The size of the builtin analytics cluster replicas if bootstrapping.

§system_parameter_default: Vec<KeyValueArg<String, String>>

An list of NAME=VALUE pairs used to override static defaults for system parameters.

§aws_account_id: Option<String>

The AWS account ID, which will be used to generate ARNs for Materialize-controlled AWS resources.

§aws_connection_role_arn: Option<String>

The ARN for a Materialize-controlled role to assume before assuming a customer’s requested role for an AWS connection.

§aws_external_id_prefix: Option<AwsExternalIdPrefix>

Prefix for an external ID to be supplied to all AWS AssumeRole operations.

Details: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user_externalid.html

§aws_privatelink_availability_zones: Option<Vec<String>>

The list of supported AWS PrivateLink availability zone ids. Must be zone IDs, of format e.g. “use-az1”.

§tracing: TracingCliArgs§unsafe_builtin_table_fingerprint_whitespace: Option<UnsafeBuiltinTableFingerprintWhitespace>

Injects arbitrary whitespace into builtin table fingerprints, which can trigger builtin item migrations. The amount of whitespace is determined by unsafe_builtin_table_fingerprint_whitespace_version. This argument is meant for testing only and as the names suggests should not be set in production.

§unsafe_builtin_table_fingerprint_whitespace_version: usize

Controls the amount of whitespace injected by unsafe_builtin_table_fingerprint_whitespace. Incrementing this value can allow triggering multiple builtin migrations from a single test. This argument is meant for testing only and as the names suggests should not be set in production.

Trait Implementations§

source§

impl Args for Args

source§

fn augment_args<'b>(__clap_app: Command<'b>) -> Command<'b>

Append to Command so it can instantiate Self. Read more
source§

fn augment_args_for_update<'b>(__clap_app: Command<'b>) -> Command<'b>

Append to Command so it can update self. Read more
source§

impl CommandFactory for Args

source§

fn into_app<'b>() -> Command<'b>

Deprecated, replaced with CommandFactory::command
source§

fn into_app_for_update<'b>() -> Command<'b>

Deprecated, replaced with CommandFactory::command_for_update
source§

fn command<'help>() -> App<'help>

Build a Command that can instantiate Self. Read more
source§

fn command_for_update<'help>() -> App<'help>

Build a Command that can update self. Read more
source§

impl Debug for Args

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl FromArgMatches for Args

source§

fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>

Instantiate Self from ArgMatches, parsing the arguments as needed. Read more
source§

fn from_arg_matches_mut( __clap_arg_matches: &mut ArgMatches, ) -> Result<Self, Error>

Instantiate Self from ArgMatches, parsing the arguments as needed. Read more
source§

fn update_from_arg_matches( &mut self, __clap_arg_matches: &ArgMatches, ) -> Result<(), Error>

Assign values from ArgMatches to self.
source§

fn update_from_arg_matches_mut( &mut self, __clap_arg_matches: &mut ArgMatches, ) -> Result<(), Error>

Assign values from ArgMatches to self.
source§

impl Parser for Args

source§

fn parse() -> Self

Parse from std::env::args_os(), exit on error
source§

fn try_parse() -> Result<Self, Error>

Parse from std::env::args_os(), return Err on error.
source§

fn parse_from<I, T>(itr: I) -> Self
where I: IntoIterator<Item = T>, T: Into<OsString> + Clone,

Parse from iterator, exit on error
source§

fn try_parse_from<I, T>(itr: I) -> Result<Self, Error>
where I: IntoIterator<Item = T>, T: Into<OsString> + Clone,

Parse from iterator, return Err on error.
source§

fn update_from<I, T>(&mut self, itr: I)
where I: IntoIterator<Item = T>, T: Into<OsString> + Clone,

Update from iterator, exit on error
source§

fn try_update_from<I, T>(&mut self, itr: I) -> Result<(), Error>
where I: IntoIterator<Item = T>, T: Into<OsString> + Clone,

Update from iterator, return Err on error.

Auto Trait Implementations§

§

impl !Freeze for Args

§

impl RefUnwindSafe for Args

§

impl Send for Args

§

impl Sync for Args

§

impl Unpin for Args

§

impl UnwindSafe for Args

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<T> AsAny for T
where T: Any,

source§

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

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> CopyAs<T> for T

source§

fn copy_as(self) -> T

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> 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<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<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.
§

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<P, R> ProtoType<R> for P
where R: RustType<P>,

source§

impl<T> Same for T

§

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> 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>,

§

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>,

§

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,