Skip to main content

SupervisorSpecBuilder

Struct SupervisorSpecBuilder 

Source
pub struct SupervisorSpecBuilder { /* private fields */ }
Expand description

Builder for SupervisorSpec.

Public constructors and setters keep returning SupervisorSpecBuilder for chaining. Call build to consume the builder, validate local invariants, and receive the final SupervisorSpec.

Implementations§

Source§

impl SupervisorSpecBuilder

Source

pub fn root(children: Vec<ChildSpec>) -> Self

Creates a root supervisor specification builder.

§Arguments
  • children: Children declared under the root supervisor.
§Returns

Returns a builder seeded with the same defaults as SupervisorSpec::root.

§Examples
use rust_supervisor::spec::supervisor_builder::SupervisorSpecBuilder;

let spec = SupervisorSpecBuilder::root(Vec::new()).build()?;
assert_eq!(spec.path.to_string(), "/");
Source

pub fn new(children: Vec<ChildSpec>) -> Self

Creates a root supervisor specification builder.

§Arguments
  • children: Children declared under the root supervisor.
§Returns

Returns a builder seeded with the same defaults as SupervisorSpec::root.

Source

pub fn path(self, path: SupervisorPath) -> Self

Sets the supervisor path.

§Arguments
  • path: Stable path for this supervisor.
§Returns

Returns the builder for chaining.

Source

pub fn strategy(self, strategy: SupervisionStrategy) -> Self

Sets the restart scope strategy.

§Arguments
  • strategy: Restart strategy for child exits.
§Returns

Returns the builder for chaining.

Source

pub fn children(self, children: Vec<ChildSpec>) -> Self

Replaces supervisor children.

§Arguments
  • children: Children declared under the supervisor.
§Returns

Returns the builder for chaining.

Source

pub fn child(self, child: ChildSpec) -> Self

Appends one supervisor child.

§Arguments
  • child: Child specification appended in declaration order.
§Returns

Returns the builder for chaining.

Source

pub fn config_version(self, config_version: impl Into<String>) -> Self

Sets the configuration version.

§Arguments
  • config_version: Version string that produced this declaration.
§Returns

Returns the builder for chaining.

Source

pub fn default_restart_policy( self, default_restart_policy: RestartPolicy, ) -> Self

Sets the default restart policy.

§Arguments
  • default_restart_policy: Restart policy inherited by children.
§Returns

Returns the builder for chaining.

Source

pub fn default_backoff_policy( self, default_backoff_policy: BackoffPolicy, ) -> Self

Sets the default backoff policy.

§Arguments
  • default_backoff_policy: Backoff policy inherited by children.
§Returns

Returns the builder for chaining.

Source

pub fn default_health_policy(self, default_health_policy: HealthPolicy) -> Self

Sets the default health policy.

§Arguments
  • default_health_policy: Health policy inherited by children.
§Returns

Returns the builder for chaining.

Source

pub fn tree_shutdown(self, tree_shutdown: TreeShutdownPolicy) -> Self

Sets the tree shutdown policy for this supervisor.

§Arguments
  • tree_shutdown: Tree shutdown policy and default child budgets.
§Returns

Returns the builder for chaining.

Source

pub fn supervisor_failure_limit(self, supervisor_failure_limit: u32) -> Self

Sets the supervisor failure limit.

§Arguments
  • supervisor_failure_limit: Maximum supervisor failures before escalation.
§Returns

Returns the builder for chaining.

Source

pub fn restart_limit(self, restart_limit: RestartLimit) -> Self

Sets the supervisor-level restart limit.

§Arguments
  • restart_limit: Restart limit applied at supervisor level.
§Returns

Returns the builder for chaining.

Source

pub fn without_restart_limit(self) -> Self

Clears the supervisor-level restart limit.

§Arguments

This function has no arguments.

§Returns

Returns the builder for chaining.

Source

pub fn escalation_policy(self, escalation_policy: EscalationPolicy) -> Self

Sets the supervisor-level fallback escalation policy.

The selected policy is used when a child-level or group-level execution plan does not define its own escalation policy. Root supervisors do not have a parent supervisor at runtime, so EscalateToParent is only a configured planning and diagnostic label for root supervisors.

§Arguments
  • escalation_policy: Fallback escalation policy applied at supervisor level.
§Returns

Returns the builder for chaining.

Source

pub fn without_escalation_policy(self) -> Self

Clears the supervisor-level fallback escalation policy.

§Arguments

This function has no arguments.

§Returns

Returns the builder for chaining.

Source

pub fn group_strategies(self, group_strategies: Vec<GroupStrategy>) -> Self

Replaces group strategy overrides.

§Arguments
  • group_strategies: Group strategy overrides.
§Returns

Returns the builder for chaining.

Source

pub fn group_strategy(self, group_strategy: GroupStrategy) -> Self

Appends one group strategy override.

§Arguments
  • group_strategy: Group strategy override appended to the supervisor.
§Returns

Returns the builder for chaining.

Source

pub fn group_configs(self, group_configs: Vec<GroupConfig>) -> Self

Replaces group configurations.

§Arguments
  • group_configs: Group-level membership and budget configurations.
§Returns

Returns the builder for chaining.

Source

pub fn group_config(self, group_config: GroupConfig) -> Self

Appends one group configuration.

§Arguments
  • group_config: Group configuration appended to the supervisor.
§Returns

Returns the builder for chaining.

Source

pub fn group_dependencies( self, group_dependencies: Vec<GroupDependencyEdge>, ) -> Self

Replaces cross-group dependency edges.

§Arguments
  • group_dependencies: Cross-group dependency edges.
§Returns

Returns the builder for chaining.

Source

pub fn group_dependency(self, group_dependency: GroupDependencyEdge) -> Self

Appends one cross-group dependency edge.

§Arguments
  • group_dependency: Cross-group dependency edge appended to the supervisor.
§Returns

Returns the builder for chaining.

Source

pub fn severity_defaults( self, severity_defaults: HashMap<TaskRole, SeverityClass>, ) -> Self

Replaces default severity classes by task role.

§Arguments
  • severity_defaults: Default severity map by task role.
§Returns

Returns the builder for chaining.

Source

pub fn severity_default( self, task_role: TaskRole, severity: SeverityClass, ) -> Self

Sets one default severity class.

§Arguments
  • task_role: Task role receiving the default severity class.
  • severity: Severity class used for the task role.
§Returns

Returns the builder for chaining.

Source

pub fn without_severity_default(self, task_role: TaskRole) -> Self

Removes one default severity class.

§Arguments
  • task_role: Task role whose default severity class is removed.
§Returns

Returns the builder for chaining.

Source

pub fn child_strategy_overrides( self, child_strategy_overrides: Vec<ChildStrategyOverride>, ) -> Self

Replaces child-level strategy overrides.

§Arguments
  • child_strategy_overrides: Child-level strategy overrides.
§Returns

Returns the builder for chaining.

Source

pub fn child_strategy_override( self, child_strategy_override: ChildStrategyOverride, ) -> Self

Appends one child-level strategy override.

§Arguments
  • child_strategy_override: Child-level strategy override appended to the supervisor.
§Returns

Returns the builder for chaining.

Source

pub fn dynamic_supervisor_policy( self, dynamic_supervisor_policy: DynamicSupervisorPolicy, ) -> Self

Sets the dynamic supervisor policy.

§Arguments
  • dynamic_supervisor_policy: Runtime child addition policy.
§Returns

Returns the builder for chaining.

Source

pub fn control_channel_capacity(self, control_channel_capacity: usize) -> Self

Sets the control command channel capacity.

§Arguments
  • control_channel_capacity: Control command channel capacity.
§Returns

Returns the builder for chaining.

Source

pub fn event_channel_capacity(self, event_channel_capacity: usize) -> Self

Sets the event broadcast channel capacity.

§Arguments
  • event_channel_capacity: Event broadcast channel capacity.
§Returns

Returns the builder for chaining.

Source

pub fn backpressure_config( self, backpressure_config: BackpressureConfig, ) -> Self

Sets the backpressure configuration.

§Arguments
  • backpressure_config: Backpressure configuration for event subscribers.
§Returns

Returns the builder for chaining.

Source

pub fn meltdown_policy(self, meltdown_policy: MeltdownPolicy) -> Self

Sets the meltdown policy.

§Arguments
  • meltdown_policy: Failure fuse policy.
§Returns

Returns the builder for chaining.

Source

pub fn failure_window_config( self, failure_window_config: FailureWindowConfig, ) -> Self

Sets the failure window configuration.

§Arguments
  • failure_window_config: Failure accumulation window configuration.
§Returns

Returns the builder for chaining.

Source

pub fn restart_budget_config( self, restart_budget_config: RestartBudgetConfig, ) -> Self

Sets the restart budget configuration.

§Arguments
  • restart_budget_config: Restart budget configuration.
§Returns

Returns the builder for chaining.

Source

pub fn pipeline_journal_capacity(self, pipeline_journal_capacity: usize) -> Self

Sets the event journal capacity used by the supervision pipeline.

§Arguments
  • pipeline_journal_capacity: Event journal capacity.
§Returns

Returns the builder for chaining.

Source

pub fn pipeline_subscriber_capacity( self, pipeline_subscriber_capacity: usize, ) -> Self

Sets the subscriber queue capacity used by the supervision pipeline.

§Arguments
  • pipeline_subscriber_capacity: Subscriber queue capacity.
§Returns

Returns the builder for chaining.

Source

pub fn concurrent_restart_limit(self, concurrent_restart_limit: u32) -> Self

Sets the concurrent restart limit.

§Arguments
  • concurrent_restart_limit: Maximum concurrent restarts for this supervisor.
§Returns

Returns the builder for chaining.

Source

pub fn metrics_enabled(self, metrics_enabled: bool) -> Self

Sets whether metrics recording is enabled.

§Arguments
  • metrics_enabled: Whether metrics recording is enabled.
§Returns

Returns the builder for chaining.

Source

pub fn audit_enabled(self, audit_enabled: bool) -> Self

Sets whether audit event recording is enabled.

§Arguments
  • audit_enabled: Whether audit event recording is enabled.
§Returns

Returns the builder for chaining.

Source

pub fn build(self) -> Result<SupervisorSpec, SupervisorError>

Builds and validates the supervisor specification.

§Arguments

This function has no arguments.

§Returns

Returns the constructed SupervisorSpec when local invariants pass.

§Errors

Returns SupervisorError when validation fails.

§Examples
use rust_supervisor::spec::supervisor_builder::SupervisorSpecBuilder;

let spec = SupervisorSpecBuilder::root(Vec::new())
    .config_version("demo")
    .build()?;
assert_eq!(spec.config_version, "demo");
use rust_supervisor::spec::supervisor::SupervisorSpec;
use rust_supervisor::spec::supervisor_builder::SupervisorSpecBuilder;

let builder = SupervisorSpecBuilder::root(Vec::new());
let _spec: SupervisorSpec = builder;

Trait Implementations§

Source§

impl Clone for SupervisorSpecBuilder

Source§

fn clone(&self) -> SupervisorSpecBuilder

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for SupervisorSpecBuilder

Source§

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

Formats the value using the given formatter. Read more

Auto Trait Implementations§

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> 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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> DynClone for T
where T: Clone,

Source§

fn __clone_box(&self, _: Private) -> *mut ()

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

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> 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> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. 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<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