pub struct PerformStep {
pub effect_name: Option<String>,
pub operation_name: String,
pub arguments: Vec<String>,
pub loc: Loc,
}Expand description
perform Emit(x) (bare) or perform SSE.Emit(x) (qualified).
the design decision accepts both. effect_name is None for the bare form as written;
the IR generator resolves it against the declared catalog and the
type-checker refuses an ambiguous or unknown operation with the offending
location. The bare form is what the design plan section 3.1 publishes, and under v2.83.0’s
doctrine the published surface is the promise.
Fields§
§effect_name: Option<String>§operation_name: String§arguments: Vec<String>Argument expressions, verbatim source text. The cycle-23 IR carries
arguments: Vec<String> for the same reason: resolution against the
live bindings is a RUNTIME act, and pre-resolving here would freeze a
value the enclosing step has not produced yet.
loc: LocTrait Implementations§
Auto Trait Implementations§
impl Freeze for PerformStep
impl RefUnwindSafe for PerformStep
impl Send for PerformStep
impl Sync for PerformStep
impl Unpin for PerformStep
impl UnsafeUnpin for PerformStep
impl UnwindSafe for PerformStep
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