pub enum Step {
ConstructorArgument(usize),
TupleElement(usize),
Field(Name),
}Expand description
One step of an Occurrence: which sub-value of a constructor, a tuple or a record.
A constructor’s argument and a tuple’s element are counted from zero the way
Constructor::index counts a case; a record’s field is named by its label.
Variants§
ConstructorArgument(usize)
TupleElement(usize)
Field(Name)
The field of a record with this label: where a record pattern’s entry is matched.
By label and not by position, since a record type is a set of fields with no
order of its own (typer::Type::Record); the ir module’s doc comment, What
this shape owes WebAssembly, says which order a positional target reads them in.
Reading one is a backend’s to emit: zelkova_js::emit writes it as a property read.
Trait Implementations§
impl Eq for Step
impl StructuralPartialEq for Step
Auto Trait Implementations§
impl Freeze for Step
impl RefUnwindSafe for Step
impl Send for Step
impl Sync for Step
impl Unpin for Step
impl UnsafeUnpin for Step
impl UnwindSafe for Step
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,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more