pub struct IRSessionStep {
pub node_type: &'static str,
pub source_line: u32,
pub source_column: u32,
pub op: String,
pub message_type: String,
pub branches: Vec<IRSessionBranch>,
}Expand description
One operation in a compiled session protocol (send / receive / loop / end / select / branch — §Fase 41.b adds the choices).
Fields§
§node_type: &'static str§source_line: u32§source_column: u32§op: String§message_type: String§branches: Vec<IRSessionBranch>§Fase 41.b — labelled branches (only for op == "select" | "branch").
Trait Implementations§
Source§impl Clone for IRSessionStep
impl Clone for IRSessionStep
Source§fn clone(&self) -> IRSessionStep
fn clone(&self) -> IRSessionStep
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 IRSessionStep
impl Debug for IRSessionStep
Source§impl Serialize for IRSessionStep
impl Serialize for IRSessionStep
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
Auto Trait Implementations§
impl Freeze for IRSessionStep
impl RefUnwindSafe for IRSessionStep
impl Send for IRSessionStep
impl Sync for IRSessionStep
impl Unpin for IRSessionStep
impl UnsafeUnpin for IRSessionStep
impl UnwindSafe for IRSessionStep
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<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 moreCreates a shared type from an unshared type.