Skip to main content

AgentEvent

Enum AgentEvent 

Source
pub enum AgentEvent {
Show 20 variants AgentMessageChunk { session_id: String, content: String, }, AgentThoughtChunk { session_id: String, content: String, }, ToolCall { session_id: String, tool_call_id: String, tool_name: String, kind: Option<ToolKind>, status: ToolCallStatus, raw_input: Value, parsing: Option<bool>, audit: Option<MutationSessionRecord>, }, ToolCallUpdate {
Show 14 fields session_id: String, tool_call_id: String, tool_name: String, status: ToolCallStatus, raw_output: Option<Value>, error: Option<String>, duration_ms: Option<u64>, execution_duration_ms: Option<u64>, error_category: Option<ToolCallErrorCategory>, executor: Option<ToolExecutor>, parsing: Option<bool>, raw_input: Option<Value>, raw_input_partial: Option<String>, audit: Option<MutationSessionRecord>,
}, Plan { session_id: String, plan: Value, }, TurnStart { session_id: String, iteration: usize, }, TurnEnd { session_id: String, iteration: usize, turn_info: Value, }, FeedbackInjected { session_id: String, kind: String, content: String, }, BudgetExhausted { session_id: String, max_iterations: usize, }, LoopStuck { session_id: String, max_nudges: usize, last_iteration: usize, tail_excerpt: String, }, DaemonWatchdogTripped { session_id: String, attempts: usize, elapsed_ms: u64, }, SkillActivated { session_id: String, skill_name: String, iteration: usize, reason: String, }, SkillDeactivated { session_id: String, skill_name: String, iteration: usize, }, SkillScopeTools { session_id: String, skill_name: String, allowed_tools: Vec<String>, }, ToolSearchQuery { session_id: String, tool_use_id: String, name: String, query: Value, strategy: String, mode: String, }, ToolSearchResult { session_id: String, tool_use_id: String, promoted: Vec<String>, strategy: String, mode: String, }, TranscriptCompacted { session_id: String, mode: String, strategy: String, archived_messages: usize, estimated_tokens_before: usize, estimated_tokens_after: usize, snapshot_asset_id: Option<String>, }, Handoff { session_id: String, artifact_id: String, handoff: Box<HandoffArtifact>, }, FsWatch { session_id: String, subscription_id: String, events: Vec<FsWatchEvent>, }, WorkerUpdate { session_id: String, worker_id: String, worker_name: String, worker_task: String, worker_mode: String, event: WorkerEvent, status: String, metadata: Value, audit: Option<Value>, },
}
Expand description

Events emitted by the agent loop. The first five variants map 1:1 to ACP sessionUpdate variants; the last three are harn-internal.

Variants§

§

AgentMessageChunk

Fields

§session_id: String
§content: String
§

AgentThoughtChunk

Fields

§session_id: String
§content: String
§

ToolCall

Fields

§session_id: String
§tool_call_id: String
§tool_name: String
§raw_input: Value
§parsing: Option<bool>

Set to Some(true) by the streaming candidate detector (harn#692) when this event represents a tool-call shape detected in the model’s in-flight assistant text but whose arguments have not finished parsing yet. Clients can render a spinner / placeholder while the model writes the body. The detector follows up with a ToolCallUpdate { parsing: false, .. } carrying either status: pending (promoted) or status: failed with error_category: parse_aborted. None (the default) means “this is a normal post-parse tool call, no candidate phase was active” so the on-disk shape stays compatible with replays recorded before this field existed.

§audit: Option<MutationSessionRecord>

Mutation-session audit context active when the tool was dispatched (see harn#699). Hosts use it to group every tool emission belonging to the same write-capable session.

§

ToolCallUpdate

Fields

§session_id: String
§tool_call_id: String
§tool_name: String
§raw_output: Option<Value>
§duration_ms: Option<u64>

Wall-clock milliseconds from the parse-to-execution boundary to the terminal Completed/Failed update. Includes the time spent in any wrapping orchestration logic (loop checks, post-tool hooks, microcompaction). Populated only on the terminal update — None on intermediate Pending / InProgress updates so clients can ignore the field until it shows up.

§execution_duration_ms: Option<u64>

Milliseconds spent in the actual host/builtin/MCP dispatch call only (the inner dispatch_tool_execution window). Populated only on the terminal update; None otherwise.

§error_category: Option<ToolCallErrorCategory>

Structured classification of the failure (when status is Failed). Paired with error so clients can render each category distinctly without parsing free-form strings. Always None for non-Failed updates and serialized as errorCategory in the ACP wire format.

§executor: Option<ToolExecutor>

Where the tool actually ran. None only for events emitted from sites that pre-date the dispatch decision (e.g. the pending → in-progress transition the loop emits before the dispatcher picks a backend).

§parsing: Option<bool>

Companion to ToolCall.parsing (harn#692). The streaming candidate detector emits the terminal candidate event as a ToolCallUpdate with parsing: Some(false) to retract the in-flight parsing: true chip — either by promoting the candidate (status: pending, populated raw_output: None, error: None) or aborting it (status: failed, error_category: parse_aborted). None means this update is not part of a candidate-phase transition.

§raw_input: Option<Value>

Best-effort partial parse of the streamed tool-call arguments. Populated by the SSE transport on Pending updates as the model streams input_json_delta (Anthropic) or tool_calls[].function.arguments deltas (OpenAI). None on terminal updates and on emissions from non-streaming paths (#693). When the partial bytes are not yet parseable as JSON the transport falls back to raw_input_partial.

§raw_input_partial: Option<String>

Raw concatenated bytes of the streamed tool-call arguments when a permissive parse failed (#693). Mutually exclusive with raw_input: clients render whichever is present.

§audit: Option<MutationSessionRecord>

Mutation-session audit context for the tool call. Carries the same payload as on the paired ToolCall event so a host processing a single update doesn’t have to correlate against the prior pending event.

§

Plan

Fields

§session_id: String
§plan: Value
§

TurnStart

Fields

§session_id: String
§iteration: usize
§

TurnEnd

Fields

§session_id: String
§iteration: usize
§turn_info: Value
§

FeedbackInjected

Fields

§session_id: String
§kind: String
§content: String
§

BudgetExhausted

Emitted when the agent loop exhausts max_iterations without any explicit break condition firing. Distinct from a natural “done” or a “stuck” nudge-exhaustion: this is strictly a budget cap.

Fields

§session_id: String
§max_iterations: usize
§

LoopStuck

Emitted when the loop breaks because consecutive text-only turns hit max_nudges. Parity with BudgetExhausted / TurnEnd for hosts that key off agent-terminal events.

Fields

§session_id: String
§max_nudges: usize
§last_iteration: usize
§tail_excerpt: String
§

DaemonWatchdogTripped

Emitted when the daemon idle-wait loop trips its watchdog because every configured wake source returned None for N consecutive attempts. Exists so a broken daemon doesn’t hang the session silently.

Fields

§session_id: String
§attempts: usize
§elapsed_ms: u64
§

SkillActivated

Emitted when a skill is activated. Carries the match reason so replayers can reconstruct why a given skill took effect at this iteration.

Fields

§session_id: String
§skill_name: String
§iteration: usize
§reason: String
§

SkillDeactivated

Emitted when a previously-active skill is deactivated because the reassess phase no longer matches it.

Fields

§session_id: String
§skill_name: String
§iteration: usize
§

SkillScopeTools

Emitted once per activation when the skill’s allowed_tools filter narrows the effective tool surface exposed to the model.

Fields

§session_id: String
§skill_name: String
§allowed_tools: Vec<String>
§

ToolSearchQuery

Emitted when a tool_search query is issued by the model. Carries the raw query args, the configured strategy, and a mode tag distinguishing the client-executed fallback ("client") from provider-native paths ("anthropic" / "openai"). Mirrors the transcript event shape so hosts can render a search-in-progress chip in real time — the replay path walks the transcript after the turn, which is too late for live UX.

Fields

§session_id: String
§tool_use_id: String
§name: String
§query: Value
§strategy: String
§mode: String
§

ToolSearchResult

Emitted when tool_search resolves — carries the list of tool names newly promoted into the model’s effective surface for the next turn. Pair-emitted with ToolSearchQuery on every search.

Fields

§session_id: String
§tool_use_id: String
§promoted: Vec<String>
§strategy: String
§mode: String
§

TranscriptCompacted

Fields

§session_id: String
§mode: String
§strategy: String
§archived_messages: usize
§estimated_tokens_before: usize
§estimated_tokens_after: usize
§snapshot_asset_id: Option<String>
§

Handoff

Fields

§session_id: String
§artifact_id: String
§

FsWatch

Fields

§session_id: String
§subscription_id: String
§

WorkerUpdate

Lifecycle update for a delegated/background worker. Carries the canonical typed event variant alongside the worker’s current status string and the structured metadata payload that worker_bridge_metadata builds (task, mode, timing, child run/snapshot paths, audit-session, etc.). The audit field is the same MutationSessionRecord JSON serialization carried on the bridge wire so ACP/A2A consumers don’t need to re-derive it.

One-to-one with the bridge-side worker_update session-update notification: ACP and A2A adapters subscribe to this variant and translate it into their respective wire formats. The session_id is the parent agent session that owns the worker (i.e. the session whose VM spawned the worker), so a single host stays subscribed to the same sink for both message and worker traffic.

Fields

§session_id: String
§worker_id: String
§worker_name: String
§worker_task: String
§worker_mode: String
§status: String
§metadata: Value
§audit: Option<Value>

Implementations§

Trait Implementations§

Source§

impl Clone for AgentEvent

Source§

fn clone(&self) -> AgentEvent

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 AgentEvent

Source§

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

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

impl<'de> Deserialize<'de> for AgentEvent

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl Serialize for AgentEvent

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. 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<'a, T, E> AsTaggedExplicit<'a, E> for T
where T: 'a,

Source§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

Source§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where T: 'a,

Source§

fn implicit( self, class: Class, constructed: bool, tag: u32, ) -> TaggedParser<'a, Implicit, Self, E>

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

Source§

type Output = T

Should always be Self
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<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> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,