pub struct OnionCircuitProtocol { /* private fields */ }Expand description
Encrypted onion circuit protocol.
Implementations§
Source§impl OnionCircuitProtocol
impl OnionCircuitProtocol
Sourcepub fn new(capabilities: OnionCircuitCapabilities) -> Self
pub fn new(capabilities: OnionCircuitCapabilities) -> Self
Create a protocol instance over explicit onion circuit capabilities.
Trait Implementations§
Source§impl Clone for OnionCircuitProtocol
impl Clone for OnionCircuitProtocol
Source§fn clone(&self) -> OnionCircuitProtocol
fn clone(&self) -> OnionCircuitProtocol
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for OnionCircuitProtocol
impl Debug for OnionCircuitProtocol
Source§impl Protocol for OnionCircuitProtocol
impl Protocol for OnionCircuitProtocol
Source§type State = OnionCircuitState
type State = OnionCircuitState
Protocol-private state, owned by the runtime and threaded through
step.Source§type Event = OnionCircuitEvent
type Event = OnionCircuitEvent
The protocol’s typed input, produced by
decode.Source§type Effect = OnionCircuitEffect
type Effect = OnionCircuitEffect
The protocol’s own effect algebra (the core defines no global effect enum).
Source§fn decode(&self, wire: Wire<'_>) -> Result<Self::Event, Reject>
fn decode(&self, wire: Wire<'_>) -> Result<Self::Event, Reject>
Decode the boundary into a typed event, or
Reject it. decode : Wire ⇀ Event.Source§fn step(
&self,
ctx: Ctx<'_, Self::State>,
event: Self::Event,
) -> Transition<Self::State, Self::Effect>
fn step( &self, ctx: Ctx<'_, Self::State>, event: Self::Event, ) -> Transition<Self::State, Self::Effect>
Pure transition.
step : (Ctx S, Event) → Transition (S, Effect).Source§fn capabilities(&self) -> &'static [&'static str]
fn capabilities(&self) -> &'static [&'static str]
Optional online-node capability labels advertised when this protocol is registered.
Auto Trait Implementations§
impl Freeze for OnionCircuitProtocol
impl RefUnwindSafe for OnionCircuitProtocol
impl Send for OnionCircuitProtocol
impl Sync for OnionCircuitProtocol
impl Unpin for OnionCircuitProtocol
impl UnsafeUnpin for OnionCircuitProtocol
impl UnwindSafe for OnionCircuitProtocol
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> ErasedDestructor for Twhere
T: 'static,
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
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 moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
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 moreSource§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.
impl<T> MaybeSend for T
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Returns whether the given value has been niched. Read more
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
Writes data to
out indicating that a T is niched.