pub struct Wave<V> {
pub id: WaveId,
pub session: Option<SessionId>,
pub variant: V,
pub agent: Agent,
pub handling: Handling,
pub scope: Scope,
pub from: Surface,
pub via: Option<Surface>,
pub hops: u16,
pub track: bool,
}
Fields§
§id: WaveId
§session: Option<SessionId>
§variant: V
§agent: Agent
§handling: Handling
§scope: Scope
§from: Surface
§via: Option<Surface>
§hops: u16
§track: bool
Implementations§
Source§impl Wave<SingularRipple>
impl Wave<SingularRipple>
pub fn to_singular_ultra(self) -> SingularUltraWave
pub fn to_multiple(self) -> Wave<Ripple>
Source§impl Wave<SingularRipple>
impl Wave<SingularRipple>
pub fn as_multi(&self, recipients: Recipients) -> Wave<Ripple>
Source§impl Wave<Ripple>
impl Wave<Ripple>
pub fn as_single(&self, surface: Surface) -> Wave<SingularRipple>
pub fn to_singular_directed(self) -> Result<SingularDirectedWave, SpaceErr>
Source§impl Wave<Ping>
impl Wave<Ping>
pub fn to_singular_directed(self) -> SingularDirectedWave
pub fn with_core(self, core: DirectedCore) -> Self
Source§impl Wave<Ripple>
impl Wave<Ripple>
pub fn to_ultra(self) -> UltraWave
pub fn to_directed(self) -> DirectedWave
pub fn with_core(self, core: DirectedCore) -> Self
Source§impl Wave<Signal>
impl Wave<Signal>
pub fn to_ultra(self) -> UltraWave
pub fn to_directed(self) -> DirectedWave
pub fn with_core(self, core: DirectedCore) -> Self
pub fn wrap_in_hop(self, from: Surface, to: Surface) -> DirectedProto
pub fn unwrap_from_hop(self) -> Result<Wave<Signal>, SpaceErr>
pub fn unwrap_from_transport(self) -> Result<UltraWave, SpaceErr>
pub fn to_singular_directed(self) -> SingularDirectedWave
Source§impl Wave<Ping>
impl Wave<Ping>
pub fn to_ultra(self) -> UltraWave
pub fn to_directed(self) -> DirectedWave
pub fn err(&self, err: SpaceErr, responder: Surface) -> Wave<Pong>
pub fn bounce_backs(&self) -> BounceBacks
Source§impl Wave<Pong>
impl Wave<Pong>
pub fn to_ultra(self) -> UltraWave
pub fn to_reflected(self) -> ReflectedWave
Source§impl Wave<Echo>
impl Wave<Echo>
pub fn to_ultra(self) -> UltraWave
pub fn to_reflected(self) -> ReflectedWave
Source§impl<V> Wave<V>
impl<V> Wave<V>
pub fn new(variant: V, from: Surface) -> Selfwhere
V: WaveVariant,
pub fn replace<V2>(self, variant: V2) -> Wave<V2>where
V2: WaveVariant,
Source§impl<T> Wave<RippleDef<T>>where
T: ToRecipients + Clone,
impl<T> Wave<RippleDef<T>>where
T: ToRecipients + Clone,
pub fn echo(&self) -> ReflectedProto
pub fn bounce_backs(&self) -> BounceBacks
Source§impl Wave<SingularRipple>
impl Wave<SingularRipple>
pub fn to_singular_directed(self) -> SingularDirectedWave
Trait Implementations§
Source§impl<'de, V> Deserialize<'de> for Wave<V>where
V: Deserialize<'de>,
impl<'de, V> Deserialize<'de> for Wave<V>where
V: Deserialize<'de>,
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
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 FromReflectedAggregate for Wave<Pong>
impl FromReflectedAggregate for Wave<Pong>
fn from_reflected_aggregate(agg: ReflectedAggregate) -> Result<Self, SpaceErr>where
Self: Sized,
Source§impl Into<DirectedProto> for Wave<Ping>
impl Into<DirectedProto> for Wave<Ping>
Source§fn into(self) -> DirectedProto
fn into(self) -> DirectedProto
Converts this type into the (usually inferred) input type.
Source§impl ToReflected for Wave<Echo>
impl ToReflected for Wave<Echo>
fn to_reflected(self) -> ReflectedWave
fn from_reflected(reflected: ReflectedWave) -> Result<Self, SpaceErr>
Source§impl ToReflected for Wave<Pong>
impl ToReflected for Wave<Pong>
fn to_reflected(self) -> ReflectedWave
fn from_reflected(reflected: ReflectedWave) -> Result<Self, SpaceErr>
Source§impl<S, V> ToSubstance<S> for Wave<V>where
V: ToSubstance<S>,
impl<S, V> ToSubstance<S> for Wave<V>where
V: ToSubstance<S>,
Source§impl Trackable for Wave<Ping>
impl Trackable for Wave<Ping>
fn track_id(&self) -> String
fn track_method(&self) -> String
fn track_payload(&self) -> String
fn track_from(&self) -> String
fn track_to(&self) -> String
fn track(&self) -> bool
fn track_payload_fmt(&self) -> String
fn track_key_fmt(&self) -> String
fn track_fmt(&self, tracker: &Tracker) -> String
Source§impl Trackable for Wave<Signal>
impl Trackable for Wave<Signal>
fn track_id(&self) -> String
fn track_method(&self) -> String
fn track_payload(&self) -> String
fn track_from(&self) -> String
fn track_to(&self) -> String
fn track(&self) -> bool
fn track_payload_fmt(&self) -> String
fn track_key_fmt(&self) -> String
fn track_fmt(&self, tracker: &Tracker) -> String
impl<V: Eq> Eq for Wave<V>
impl<V> StructuralPartialEq for Wave<V>
Auto Trait Implementations§
impl<V> Freeze for Wave<V>where
V: Freeze,
impl<V> RefUnwindSafe for Wave<V>where
V: RefUnwindSafe,
impl<V> Send for Wave<V>where
V: Send,
impl<V> Sync for Wave<V>where
V: Sync,
impl<V> Unpin for Wave<V>where
V: Unpin,
impl<V> UnwindSafe for Wave<V>where
V: UnwindSafe,
Blanket Implementations§
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<I, T> ExtractContext<I, ()> for T
impl<I, T> ExtractContext<I, ()> for T
Source§fn extract_context(self, _original_input: I)
fn extract_context(self, _original_input: I)
Given the context attached to a nom error, and given the original
input to the nom parser, extract more the useful context information. Read more
Source§impl<I> RecreateContext<I> for I
impl<I> RecreateContext<I> for I
Source§fn recreate_context(_original_input: I, tail: I) -> I
fn recreate_context(_original_input: I, tail: I) -> I
Given the original input, as well as the context reported by nom,
recreate a context in the original string where the error occurred. Read more