Skip to main content

Rule

Enum Rule 

Source
pub enum Rule {
Show 184 variants EOI, WHITESPACE, COMMENT, choreography, top_level_decl, module_decl, import_decl, expose_list, protocol_decl, where_block, locals_block, local_protocol_decl, proof_bundle_decl, proof_bundle_meta, proof_bundle_version, proof_bundle_issuer, proof_bundle_constraint, proof_bundle_requires, capability_list, protocol_requires, protocol_uses, protocol_profiles, profile_decl, profile_meta, profile_fairness, profile_admissibility, profile_escalation_window, agreement_profile_decl, agreement_profile_body, agreement_profile_meta, agreement_profile_visibility, agreement_profile_rule, agreement_profile_usable_at, agreement_profile_finalized_at, agreement_profile_evidence, type_decl, type_alias_decl, union_type_decl, union_ctor_block, union_ctor_decl, ctor_type_payload, effect_decl, effect_body, effect_op_decl, effect_op_head, effect_op_authority_class, effect_op_meta_body, effect_op_meta, effect_op_semantic_class, effect_op_progress, effect_op_region, effect_op_agreement_use, effect_op_reentrancy, type_expr, type_record, type_result, type_maybe, type_unit, role_set_decl, role_set_expr, role_set_members, role_set_subset, topology_decl, topology_kind, topology_members, fragment_decl, ident_list, integer_list, operation_decl, operation_params, operation_param_decl, operation_within, operation_progress, operation_agreement, operation_prestate, operation_compose, guest_runtime_decl, guest_runtime_body, guest_runtime_stmt, guest_runtime_uses, guest_runtime_entry, header_roles, roles_decl, role_list, role_decl, role_param, role_param_expr, protocol_body, block_protocol, statement, progress_attachment, progress_meta, progress_requires, progress_within, progress_on_timeout, progress_on_stall, begin_stmt, begin_args, await_stmt, resolve_stmt, resolve_outcome, resolve_success, resolve_failure, resolve_timeout, resolve_cancelled, invalidate_stmt, authority_let_in_stmt, authority_let_stmt, observe_let_in_stmt, observe_let_stmt, let_in_stmt, let_stmt, case_stmt, case_block, case_branch, match_pattern, match_pattern_payload, timeout_stmt, authority_expr, check_expr, observe_expr, transfer_expr, result_ctor_expr, maybe_ctor_expr, ctor_value_payload, effect_call, call_expr, argument_list, authority_atom, ident_expr, duration, time_unit, call_stmt, publish_authority_stmt, publish_stmt, materialize_stmt, handoff_stmt, dependent_work_stmt, continue_stmt, send_stmt, broadcast_stmt, annotated_sender_ref, role_metadata_record, role_annotation_entries, role_annotation_entry, role_annotation_value, role_ref, role_index, role_index_expr, range_expr, choice_stmt, choice_head, choice_block, block_choice, choice_branch, par_stmt, par_block, par_branch, guard, predicate_guard, evidence_guard, guard_expr, loop_stmt, loop_spec, loop_decide, loop_repeat, loop_while, loop_forever, int_expr, rec_stmt, block, branch_body, message, message_of, type_spec, type_path, type_path_segment, type_generics, payload, payload_paren, payload_brace, ident, integer, string,
}

Variants§

§

EOI

End-of-input

§

WHITESPACE

§

COMMENT

§

choreography

§

top_level_decl

§

module_decl

§

import_decl

§

expose_list

§

protocol_decl

§

where_block

§

locals_block

§

local_protocol_decl

§

proof_bundle_decl

§

proof_bundle_meta

§

proof_bundle_version

§

proof_bundle_issuer

§

proof_bundle_constraint

§

proof_bundle_requires

§

capability_list

§

protocol_requires

§

protocol_uses

§

protocol_profiles

§

profile_decl

§

profile_meta

§

profile_fairness

§

profile_admissibility

§

profile_escalation_window

§

agreement_profile_decl

§

agreement_profile_body

§

agreement_profile_meta

§

agreement_profile_visibility

§

agreement_profile_rule

§

agreement_profile_usable_at

§

agreement_profile_finalized_at

§

agreement_profile_evidence

§

type_decl

§

type_alias_decl

§

union_type_decl

§

union_ctor_block

§

union_ctor_decl

§

ctor_type_payload

§

effect_decl

§

effect_body

§

effect_op_decl

§

effect_op_head

§

effect_op_authority_class

§

effect_op_meta_body

§

effect_op_meta

§

effect_op_semantic_class

§

effect_op_progress

§

effect_op_region

§

effect_op_agreement_use

§

effect_op_reentrancy

§

type_expr

§

type_record

§

type_result

§

type_maybe

§

type_unit

§

role_set_decl

§

role_set_expr

§

role_set_members

§

role_set_subset

§

topology_decl

§

topology_kind

§

topology_members

§

fragment_decl

§

ident_list

§

integer_list

§

operation_decl

§

operation_params

§

operation_param_decl

§

operation_within

§

operation_progress

§

operation_agreement

§

operation_prestate

§

operation_compose

§

guest_runtime_decl

§

guest_runtime_body

§

guest_runtime_stmt

§

guest_runtime_uses

§

guest_runtime_entry

§

header_roles

§

roles_decl

§

role_list

§

role_decl

§

role_param

§

role_param_expr

§

protocol_body

§

block_protocol

§

statement

§

progress_attachment

§

progress_meta

§

progress_requires

§

progress_within

§

progress_on_timeout

§

progress_on_stall

§

begin_stmt

§

begin_args

§

await_stmt

§

resolve_stmt

§

resolve_outcome

§

resolve_success

§

resolve_failure

§

resolve_timeout

§

resolve_cancelled

§

invalidate_stmt

§

authority_let_in_stmt

§

authority_let_stmt

§

observe_let_in_stmt

§

observe_let_stmt

§

let_in_stmt

§

let_stmt

§

case_stmt

§

case_block

§

case_branch

§

match_pattern

§

match_pattern_payload

§

timeout_stmt

§

authority_expr

§

check_expr

§

observe_expr

§

transfer_expr

§

result_ctor_expr

§

maybe_ctor_expr

§

ctor_value_payload

§

effect_call

§

call_expr

§

argument_list

§

authority_atom

§

ident_expr

§

duration

§

time_unit

§

call_stmt

§

publish_authority_stmt

§

publish_stmt

§

materialize_stmt

§

handoff_stmt

§

dependent_work_stmt

§

continue_stmt

§

send_stmt

§

broadcast_stmt

§

annotated_sender_ref

§

role_metadata_record

§

role_annotation_entries

§

role_annotation_entry

§

role_annotation_value

§

role_ref

§

role_index

§

role_index_expr

§

range_expr

§

choice_stmt

§

choice_head

§

choice_block

§

block_choice

§

choice_branch

§

par_stmt

§

par_block

§

par_branch

§

guard

§

predicate_guard

§

evidence_guard

§

guard_expr

§

loop_stmt

§

loop_spec

§

loop_decide

§

loop_repeat

§

loop_while

§

loop_forever

§

int_expr

§

rec_stmt

§

block

§

branch_body

§

message

§

message_of

§

type_spec

§

type_path

§

type_path_segment

§

type_generics

§

payload

§

payload_paren

§

payload_brace

§

ident

§

integer

§

string

Implementations§

Source§

impl Rule

Source

pub fn all_rules() -> &'static [Rule]

Trait Implementations§

Source§

impl Clone for Rule

Source§

fn clone(&self) -> Rule

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Rule

Source§

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

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

impl Hash for Rule

Source§

fn hash<__H>(&self, state: &mut __H)
where __H: Hasher,

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl Ord for Rule

Source§

fn cmp(&self, other: &Rule) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · Source§

fn max(self, other: Self) -> Self
where Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · Source§

fn min(self, other: Self) -> Self
where Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 · Source§

fn clamp(self, min: Self, max: Self) -> Self
where Self: Sized,

Restrict a value to a certain interval. Read more
Source§

impl PartialEq for Rule

Source§

fn eq(&self, other: &Rule) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialOrd for Rule

Source§

fn partial_cmp(&self, other: &Rule) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · Source§

fn lt(&self, other: &Rhs) -> bool

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · Source§

fn le(&self, other: &Rhs) -> bool

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · Source§

fn gt(&self, other: &Rhs) -> bool

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · Source§

fn ge(&self, other: &Rhs) -> bool

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
Source§

impl Copy for Rule

Source§

impl Eq for Rule

Source§

impl StructuralPartialEq for Rule

Auto Trait Implementations§

§

impl Freeze for Rule

§

impl RefUnwindSafe for Rule

§

impl Send for Rule

§

impl Sync for Rule

§

impl Unpin for Rule

§

impl UnsafeUnpin for Rule

§

impl UnwindSafe for Rule

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> Az for T

Source§

fn az<Dst>(self) -> Dst
where T: Cast<Dst>,

Casts the value.
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<Src, Dst> CastFrom<Src> for Dst
where Src: Cast<Dst>,

Source§

fn cast_from(src: Src) -> Dst

Casts the value.
Source§

impl<T> CheckedAs for T

Source§

fn checked_as<Dst>(self) -> Option<Dst>
where T: CheckedCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> CheckedCastFrom<Src> for Dst
where Src: CheckedCast<Dst>,

Source§

fn checked_cast_from(src: Src) -> Option<Dst>

Casts the value.
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<Q, K> Comparable<K> for Q
where Q: Ord + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn compare(&self, key: &K) -> Ordering

Compare self to key and return their ordering.
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

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<Src, Dst> LosslessTryInto<Dst> for Src
where Dst: LosslessTryFrom<Src>,

Source§

fn lossless_try_into(self) -> Option<Dst>

Performs the conversion.
Source§

impl<Src, Dst> LossyInto<Dst> for Src
where Dst: LossyFrom<Src>,

Source§

fn lossy_into(self) -> Dst

Performs the conversion.
Source§

impl<T> OverflowingAs for T

Source§

fn overflowing_as<Dst>(self) -> (Dst, bool)
where T: OverflowingCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> OverflowingCastFrom<Src> for Dst
where Src: OverflowingCast<Dst>,

Source§

fn overflowing_cast_from(src: Src) -> (Dst, bool)

Casts the value.
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> SaturatingAs for T

Source§

fn saturating_as<Dst>(self) -> Dst
where T: SaturatingCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> SaturatingCastFrom<Src> for Dst
where Src: SaturatingCast<Dst>,

Source§

fn saturating_cast_from(src: Src) -> Dst

Casts the value.
Source§

impl<T> StrictAs for T

Source§

fn strict_as<Dst>(self) -> Dst
where T: StrictCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> StrictCastFrom<Src> for Dst
where Src: StrictCast<Dst>,

Source§

fn strict_cast_from(src: Src) -> Dst

Casts the value.
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<T> UnwrappedAs for T

Source§

fn unwrapped_as<Dst>(self) -> Dst
where T: UnwrappedCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> UnwrappedCastFrom<Src> for Dst
where Src: UnwrappedCast<Dst>,

Source§

fn unwrapped_cast_from(src: Src) -> Dst

Casts the value.
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
Source§

impl<T> WrappingAs for T

Source§

fn wrapping_as<Dst>(self) -> Dst
where T: WrappingCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> WrappingCastFrom<Src> for Dst
where Src: WrappingCast<Dst>,

Source§

fn wrapping_cast_from(src: Src) -> Dst

Casts the value.
Source§

impl<T> Endpoint for T
where T: Send,

Source§

impl<T> ProgramMessage for T
where T: Clone + Send + Sync + Debug,

Source§

impl<T> RuleType for T
where T: Copy + Debug + Eq + Hash + Ord,