Skip to main content

InMemoryRuntimeStore

Struct InMemoryRuntimeStore 

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

In-memory runtime store. Thread-safe via tokio::sync::Mutex.

Implementations§

Trait Implementations§

Source§

impl Clone for InMemoryRuntimeStore

Source§

fn clone(&self) -> InMemoryRuntimeStore

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 InMemoryRuntimeStore

Source§

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

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

impl Default for InMemoryRuntimeStore

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl RuntimeStore for InMemoryRuntimeStore

Source§

fn supports_compaction_projection_outbox(&self) -> bool

Whether RuntimeStore::atomic_apply durably records typed compaction projection intents in the same boundary as the session rewrite. Unknown/custom stores fail closed by default.
Source§

fn load_runtime_delivery_authority<'life0, 'life1, 'async_trait>( &'life0 self, runtime_id: &'life1 LogicalRuntimeId, ) -> Pin<Box<dyn Future<Output = Result<Option<RuntimeDeliveryAuthorityRecord>, RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Load the exact generated runtime-delivery authority record.
Source§

fn load_runtime_delivery_record<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, runtime_id: &'life1 LogicalRuntimeId, delivery_id: &'life2 str, ) -> Pin<Box<dyn Future<Output = Result<Option<RuntimeDeliveryStoreRecord>, RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Load one durable runtime-delivery inbox row by stable identity.
Source§

fn compare_and_swap_runtime_delivery_authority<'life0, 'life1, 'async_trait>( &'life0 self, runtime_id: &'life1 LogicalRuntimeId, expected_revision: Option<u64>, replacement: RuntimeDeliveryAuthorityRecord, inserted_delivery: Option<RuntimeDeliveryStoreRecord>, ) -> Pin<Box<dyn Future<Output = Result<RuntimeDeliveryAuthorityCasOutcome, RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Compare-and-swap generated delivery authority and optionally insert one inbox row in the same atomic boundary. Read more
Source§

fn list_runtime_delivery_records<'life0, 'life1, 'async_trait>( &'life0 self, runtime_id: &'life1 LogicalRuntimeId, after_sequence: u64, limit: usize, ) -> Pin<Box<dyn Future<Output = Result<Vec<RuntimeDeliveryStoreRecord>, RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

List durable inbox rows in generated sequence order.
Source§

fn persist_auth_oauth_flow_snapshot( &self, snapshot_json: &[u8], ) -> Result<(), RuntimeStoreError>

Persist the runtime-owned OAuth login-flow payload snapshot. Read more
Source§

fn load_auth_oauth_flow_snapshot( &self, ) -> Result<Option<Vec<u8>>, RuntimeStoreError>

Load the runtime-owned OAuth login-flow payload snapshot, if present.
Source§

fn update_auth_oauth_flow_snapshot( &self, update: &mut AuthOAuthFlowSnapshotUpdate<'_>, ) -> Result<(), RuntimeStoreError>

Atomically update the runtime-owned OAuth login-flow payload snapshot. Read more
Source§

fn commit_session_snapshot<'life0, 'life1, 'async_trait>( &'life0 self, runtime_id: &'life1 LogicalRuntimeId, session_delta: SessionDelta, ) -> Pin<Box<dyn Future<Output = Result<(), RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Atomically persist a session snapshot that is not a run boundary. Read more
Source§

fn commit_session_transcript_rewrite_snapshot<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, runtime_id: &'life1 LogicalRuntimeId, session_delta: SessionDelta, commit: &'life2 TranscriptRewriteCommit, ) -> Pin<Box<dyn Future<Output = Result<(), RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Atomically persist a same-session transcript rewrite snapshot. Read more
Source§

fn atomic_apply<'life0, 'life1, 'async_trait>( &'life0 self, runtime_id: &'life1 LogicalRuntimeId, session_delta: Option<SessionDelta>, receipt: RunBoundaryReceipt, input_updates: Vec<InputStatePersistenceRecord>, session_store_key: Option<SessionId>, ) -> Pin<Box<dyn Future<Output = Result<(), RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Atomically persist session delta + receipt + input state updates. Read more
Source§

fn load_pending_compaction_projections<'life0, 'life1, 'async_trait>( &'life0 self, runtime_id: &'life1 LogicalRuntimeId, ) -> Pin<Box<dyn Future<Output = Result<Vec<CompactionProjectionIntent>, RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Load exact compaction projection intents committed by atomic_apply but not yet acknowledged as finalized by the memory store.
Source§

fn mark_compaction_projection_finalized<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, runtime_id: &'life1 LogicalRuntimeId, projection: &'life2 CompactionProjectionId, ) -> Pin<Box<dyn Future<Output = Result<(), RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Idempotently acknowledge post-commit memory finalization. Read more
Source§

fn atomic_apply_with_machine_lifecycle<'life0, 'life1, 'async_trait>( &'life0 self, runtime_id: &'life1 LogicalRuntimeId, session_delta: SessionDelta, receipt: RunBoundaryReceipt, machine_lifecycle: MachineLifecycleCommit, input_updates: Vec<InputStatePersistenceRecord>, session_store_key: SessionId, ) -> Pin<Box<dyn Future<Output = Result<(), RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Atomically persist a failed-but-applied runtime turn. Read more
Source§

fn load_input_states<'life0, 'life1, 'async_trait>( &'life0 self, runtime_id: &'life1 LogicalRuntimeId, ) -> Pin<Box<dyn Future<Output = Result<Vec<InputStateRow>, RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Load all input states for a runtime, one row outcome per stored row. Read more
Source§

fn load_boundary_receipt<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, runtime_id: &'life1 LogicalRuntimeId, run_id: &'life2 RunId, sequence: u64, ) -> Pin<Box<dyn Future<Output = Result<Option<RunBoundaryReceipt>, RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Load a specific boundary receipt.
Source§

fn load_session_snapshot<'life0, 'life1, 'async_trait>( &'life0 self, runtime_id: &'life1 LogicalRuntimeId, ) -> Pin<Box<dyn Future<Output = Result<Option<Vec<u8>>, RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Load the latest committed session snapshot for a runtime, if any.
Source§

fn clear_session_snapshot<'life0, 'life1, 'async_trait>( &'life0 self, runtime_id: &'life1 LogicalRuntimeId, ) -> Pin<Box<dyn Future<Output = Result<(), RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Remove the latest committed session snapshot for a runtime. Read more
Source§

fn replace_session_snapshot_if_current<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, runtime_id: &'life1 LogicalRuntimeId, expected_current: &'life2 [u8], replacement: Vec<u8>, ) -> Pin<Box<dyn Future<Output = Result<bool, RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Replace the latest committed session snapshot only if it still matches expected_current. Read more
Source§

fn clear_session_snapshot_if_current<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, runtime_id: &'life1 LogicalRuntimeId, expected_current: &'life2 [u8], ) -> Pin<Box<dyn Future<Output = Result<bool, RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Remove the latest committed session snapshot only if it still matches expected_current. Read more
Source§

fn is_runtime_projection_quarantined<'life0, 'life1, 'async_trait>( &'life0 self, runtime_id: &'life1 LogicalRuntimeId, ) -> Pin<Box<dyn Future<Output = Result<bool, RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Report whether the runtime-projection fallback for runtime_id is quarantined. Read more
Source§

fn persist_input_state<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, runtime_id: &'life1 LogicalRuntimeId, state: &'life2 InputStatePersistenceRecord, ) -> Pin<Box<dyn Future<Output = Result<(), RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Persist a single input state (for durable-before-ack).
Source§

fn persist_input_states_atomically<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, runtime_id: &'life1 LogicalRuntimeId, records: &'life2 [InputStatePersistenceRecord], ) -> Pin<Box<dyn Future<Output = Result<(), RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Atomically persist a batch of machine-authorized input shell updates. Used by per-input terminal outboxes so an N-input batch can never expose a mixed provisional/finalized or finalized/published phase.
Source§

fn compare_and_swap_input_states_atomically<'life0, 'life1, 'life2, 'life3, 'async_trait>( &'life0 self, runtime_id: &'life1 LogicalRuntimeId, expected: &'life2 [StoredInputState], replacements: &'life3 [InputStatePersistenceRecord], ) -> Pin<Box<dyn Future<Output = Result<InputStateBatchCasOutcome, RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait, 'life3: 'async_trait,

Atomically replace an exact set of input-state rows only when every currently persisted row is byte-identical to its expected StoredInputState serialization. Read more
Source§

fn compare_and_swap_input_states_atomically_with_fence<'life0, 'life1, 'life2, 'life3, 'async_trait>( &'life0 self, runtime_id: &'life1 LogicalRuntimeId, expected: &'life2 [StoredInputState], replacements: &'life3 [InputStatePersistenceRecord], write_fence: Arc<dyn RuntimeStoreWriteFence>, ) -> Pin<Box<dyn Future<Output = Result<FencedInputStateBatchCasOutcome, RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait, 'life3: 'async_trait,

Atomically replace an exact input-state batch while an external authority fence is held across the target write. Read more
Source§

fn load_input_state<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, runtime_id: &'life1 LogicalRuntimeId, input_id: &'life2 InputId, ) -> Pin<Box<dyn Future<Output = Result<Option<StoredInputState>, RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Load a single input state.
Source§

fn observe_machine_lifecycle<'life0, 'life1, 'async_trait>( &'life0 self, runtime_id: &'life1 LogicalRuntimeId, ) -> Pin<Box<dyn Future<Output = Result<MachineLifecycleObservation, RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Observe one physical machine-lifecycle row without collapsing corrupt or future-version bytes into absence. Read more
Source§

fn compare_and_swap_machine_lifecycle<'life0, 'life1, 'async_trait>( &'life0 self, runtime_id: &'life1 LogicalRuntimeId, expected: MachineLifecycleExpectedVersion, replacement: MachineLifecycleCommit, ) -> Pin<Box<dyn Future<Output = Result<MachineLifecycleCasOutcome, RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Replace exactly one machine-lifecycle row when it is absent or still has the observed raw-content version. Read more
Source§

fn compare_and_swap_machine_lifecycle_with_fence<'life0, 'life1, 'async_trait>( &'life0 self, runtime_id: &'life1 LogicalRuntimeId, expected: MachineLifecycleExpectedVersion, replacement: MachineLifecycleCommit, write_fence: Arc<dyn RuntimeStoreWriteFence>, ) -> Pin<Box<dyn Future<Output = Result<FencedMachineLifecycleCasOutcome, RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Replace exactly one lifecycle row while an external authority fence is held across the target write. Read more
Source§

fn load_machine_lifecycle_record<'life0, 'life1, 'async_trait>( &'life0 self, runtime_id: &'life1 LogicalRuntimeId, ) -> Pin<Box<dyn Future<Output = Result<Option<Vec<u8>>, RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Load the last persisted machine lifecycle record bytes, if any. Read more
Source§

fn commit_machine_lifecycle<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, runtime_id: &'life1 LogicalRuntimeId, commit: MachineLifecycleCommit, input_states: &'life2 [InputStatePersistenceRecord], ) -> Pin<Box<dyn Future<Output = Result<(), RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Atomically commit machine-owned lifecycle state changes. Read more
Source§

fn commit_unregister_finalization<'life0, 'life1, 'async_trait>( &'life0 self, runtime_id: &'life1 LogicalRuntimeId, finalization: UnregisterFinalizationCommit, ) -> Pin<Box<dyn Future<Output = Result<(), RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Atomically publish final unregister lifecycle truth and retire the matching ops-lifecycle epoch. Read more
Source§

fn persist_ops_lifecycle<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, runtime_id: &'life1 LogicalRuntimeId, snapshot: &'life2 PersistedOpsSnapshot, ) -> Pin<Box<dyn Future<Output = Result<(), RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Persist a snapshot of the ops lifecycle registry state.
Source§

fn initialize_ops_lifecycle_if_absent<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, runtime_id: &'life1 LogicalRuntimeId, candidate: &'life2 PersistedOpsSnapshot, ) -> Pin<Box<dyn Future<Output = Result<PersistedOpsSnapshot, RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Atomically initialize the ops lifecycle row if it is absent and return the canonical durable snapshot. Read more
Source§

fn load_ops_lifecycle<'life0, 'life1, 'async_trait>( &'life0 self, runtime_id: &'life1 LogicalRuntimeId, ) -> Pin<Box<dyn Future<Output = Result<Option<PersistedOpsSnapshot>, RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Load a previously persisted ops lifecycle snapshot.
Source§

fn delete_ops_lifecycle<'life0, 'life1, 'async_trait>( &'life0 self, runtime_id: &'life1 LogicalRuntimeId, ) -> Pin<Box<dyn Future<Output = Result<(), RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Delete a previously persisted ops lifecycle snapshot.
Source§

fn auth_authority_key(&self) -> Option<String>

Stable key for process-local auth/OAuth authority reuse across reopened handles for the same durable store.
Source§

fn load_input_states_strict<'life0, 'life1, 'async_trait>( &'life0 self, runtime_id: &'life1 LogicalRuntimeId, ) -> Pin<Box<dyn Future<Output = Result<Vec<StoredInputState>, RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Strict projection of RuntimeStore::load_input_states: every row must decode; the first corrupt row fails the whole load with its row identity in the typed error.
Source§

fn load_mob_host_binding<'life0, 'life1, 'async_trait>( &'life0 self, mob_id: &'life1 str, ) -> Pin<Box<dyn Future<Output = Result<Option<Vec<u8>>, RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Load the persisted host-binding record blob for mob_id, if any.
Source§

fn list_mob_host_bindings<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Vec<(String, Vec<u8>)>, RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

List every persisted host-binding row (boot recovery).
Source§

fn put_mob_host_binding_if_absent<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, mob_id: &'life1 str, record_json: &'life2 [u8], ) -> Pin<Box<dyn Future<Output = Result<bool, RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Insert the host-binding row for mob_id iff absent. Returns whether the row was inserted.
Source§

fn compare_and_put_mob_host_binding<'life0, 'life1, 'life2, 'life3, 'async_trait>( &'life0 self, mob_id: &'life1 str, expected_json: &'life2 [u8], next_json: &'life3 [u8], ) -> Pin<Box<dyn Future<Output = Result<bool, RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait, 'life3: 'async_trait,

Replace the host-binding row for mob_id iff the stored blob equals expected_json. Returns whether the swap applied.
Source§

fn delete_mob_host_binding<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, mob_id: &'life1 str, expected_json: &'life2 [u8], ) -> Pin<Box<dyn Future<Output = Result<bool, RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Delete the host-binding row for mob_id iff the stored blob equals expected_json. Returns whether a row was deleted.
Source§

fn load_mob_host_revocation<'life0, 'life1, 'async_trait>( &'life0 self, mob_id: &'life1 str, ) -> Pin<Box<dyn Future<Output = Result<Option<Vec<u8>>, RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Load the durable receipt for an already-completed host revocation. Read more
Source§

fn list_mob_host_revocations<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Vec<(String, Vec<u8>)>, RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

List durable host-revocation receipts for boot recovery of exact reply-loss retries. Receipts are not bindings and carry no member revival rows.
Source§

fn revoke_mob_host_binding<'life0, 'life1, 'life2, 'life3, 'async_trait>( &'life0 self, mob_id: &'life1 str, expected_binding_json: &'life2 [u8], receipt_json: &'life3 [u8], ) -> Pin<Box<dyn Future<Output = Result<bool, RuntimeStoreError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait, 'life3: 'async_trait,

Atomically delete the expected active binding and publish its revoke receipt. Returns false when the expected binding did not match; in that case neither write is visible. 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> CoreExecutorTurnFinalizationGuard for T
where T: Send,

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

Source§

fn from_ref(input: &T) -> T

Converts to this type from a reference to the input type.
Source§

impl<A, B, T> HttpServerConnExec<A, B> for T
where B: Body,

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> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Sized + 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: Sized + 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