pub struct IntroduceAck {
status_code: IntroduceAckStatus,
extensions: ExtList<IntroduceAckExt>,
}Expand description
A reply from the introduction point to the client, telling it that its introduce1 was received.
Fields§
§status_code: IntroduceAckStatusThe status reported for the Introduce1 message.
extensions: ExtList<IntroduceAckExt>The extensions on this message.
Implementations§
Source§impl IntroduceAck
impl IntroduceAck
Sourcepub fn new(status_code: IntroduceAckStatus) -> Self
pub fn new(status_code: IntroduceAckStatus) -> Self
Create a new IntroduceAck message with a provided status code.
Sourcepub fn status(&self) -> IntroduceAckStatus
pub fn status(&self) -> IntroduceAckStatus
Return the status code from this message.
Sourcepub fn success(self) -> Result<IntroduceAck, IntroduceAckStatus>
pub fn success(self) -> Result<IntroduceAck, IntroduceAckStatus>
Checks whether the introduction was a success
If introduction was forwarded successfully,
returns an Ok<IntroduceAck>, whose .status() can safely be ignored.
(The extension list may still be of interest.)
Otherwise, returns Err<IntroduceAckStatus>,
which is suitable for error reporting purposes.
Trait Implementations§
Source§impl Body for IntroduceAck
impl Body for IntroduceAck
Source§fn decode_from_reader(r: &mut Reader<'_>) -> Result<Self>
fn decode_from_reader(r: &mut Reader<'_>) -> Result<Self>
Decode a relay cell body from a provided reader.
Source§fn encode_onto<W: Writer + ?Sized>(self, w: &mut W) -> EncodeResult<()>
fn encode_onto<W: Writer + ?Sized>(self, w: &mut W) -> EncodeResult<()>
Encode the body of this cell into the end of a writer.
Source§impl Clone for IntroduceAck
impl Clone for IntroduceAck
Source§fn clone(&self) -> IntroduceAck
fn clone(&self) -> IntroduceAck
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 IntroduceAck
impl Debug for IntroduceAck
Source§impl From<IntroduceAck> for AnyRelayMsg
Available on crate feature hs only.
impl From<IntroduceAck> for AnyRelayMsg
Available on crate feature
hs only.Source§fn from(m: IntroduceAck) -> AnyRelayMsg
fn from(m: IntroduceAck) -> AnyRelayMsg
Converts to this type from the input type.
Source§impl HasMemoryCostStructural for IntroduceAck
impl HasMemoryCostStructural for IntroduceAck
Source§fn indirect_memory_cost(&self, et: EnabledToken) -> usize
fn indirect_memory_cost(&self, et: EnabledToken) -> usize
Memory cost of data stored out-of-line Read more
Source§impl RelayMsg for IntroduceAck
impl RelayMsg for IntroduceAck
Source§fn encode_onto<W: Writer + ?Sized>(self, w: &mut W) -> EncodeResult<()>
fn encode_onto<W: Writer + ?Sized>(self, w: &mut W) -> EncodeResult<()>
Encode the body of this message, not including command or length
Source§impl TryFrom<AnyRelayMsg> for IntroduceAck
impl TryFrom<AnyRelayMsg> for IntroduceAck
Source§fn try_from(msg: AnyRelayMsg) -> Result<IntroduceAck>
fn try_from(msg: AnyRelayMsg) -> Result<IntroduceAck>
Performs the conversion.
Auto Trait Implementations§
impl Freeze for IntroduceAck
impl RefUnwindSafe for IntroduceAck
impl Send for IntroduceAck
impl Sync for IntroduceAck
impl Unpin for IntroduceAck
impl UnsafeUnpin for IntroduceAck
impl UnwindSafe for IntroduceAck
Blanket Implementations§
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,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Converts
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Converts
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Converts
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Converts
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSend for T
impl<T> DowncastSend for T
Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<T> HasMemoryCost for Twhere
T: HasMemoryCostStructural,
impl<T> HasMemoryCost for Twhere
T: HasMemoryCostStructural,
Source§fn memory_cost(&self, et: EnabledToken) -> usize
fn memory_cost(&self, et: EnabledToken) -> usize
Returns the memory cost of
self, in bytes Read moreSource§impl<T> HasTypedMemoryCost<T> for Twhere
T: HasMemoryCost,
impl<T> HasTypedMemoryCost<T> for Twhere
T: HasMemoryCost,
Source§fn typed_memory_cost(&self, enabled: EnabledToken) -> TypedMemoryCost<T>
fn typed_memory_cost(&self, enabled: EnabledToken) -> TypedMemoryCost<T>
The cost, as a
TypedMemoryCost<T> rather than a raw usizeSource§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 more