pub enum RirArgMode {
Normal,
MutRef,
Ref,
}Expand description
Argument passing mode in RIR.
Mirrors RirParamMode: MutRef / Ref are vestigial-but-used
markers carried alongside arguments whose ref-ness cannot be encoded in
the AIR value type (interface forwarding) so codegen still routes them
through the by-pointer ABI.
Variants§
Normal
Normal pass-by-value argument (or a &x / &mut x whose ref-ness
is already in the AIR value type).
MutRef
Exclusive mutable reborrow forwarded to a MutRef-mode parameter.
Ref
Shared immutable reborrow forwarded to a Ref-mode parameter.
Trait Implementations§
Source§impl Clone for RirArgMode
impl Clone for RirArgMode
Source§fn clone(&self) -> RirArgMode
fn clone(&self) -> RirArgMode
Returns a duplicate of the value. Read more
1.0.0 · 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 RirArgMode
impl Debug for RirArgMode
Source§impl Default for RirArgMode
impl Default for RirArgMode
Source§fn default() -> RirArgMode
fn default() -> RirArgMode
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for RirArgMode
impl<'de> Deserialize<'de> for RirArgMode
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 PartialEq for RirArgMode
impl PartialEq for RirArgMode
Source§impl Serialize for RirArgMode
impl Serialize for RirArgMode
impl Copy for RirArgMode
impl Eq for RirArgMode
impl StructuralPartialEq for RirArgMode
Auto Trait Implementations§
impl Freeze for RirArgMode
impl RefUnwindSafe for RirArgMode
impl Send for RirArgMode
impl Sync for RirArgMode
impl Unpin for RirArgMode
impl UnsafeUnpin for RirArgMode
impl UnwindSafe for RirArgMode
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<'src, T> IntoMaybe<'src, T> for Twhere
T: 'src,
impl<'src, T> IntoMaybe<'src, T> for Twhere
T: 'src,
§impl<'p, T> Seq<'p, T> for Twhere
T: Clone,
impl<'p, T> Seq<'p, T> for Twhere
T: Clone,
§type Iter<'a> = Once<&'a T>
where
T: 'a
type Iter<'a> = Once<&'a T> where T: 'a
An iterator over the items within this container, by reference.
§fn contains(&self, val: &T) -> boolwhere
T: PartialEq,
fn contains(&self, val: &T) -> boolwhere
T: PartialEq,
Check whether an item is contained within this sequence.
§fn to_maybe_ref<'b>(item: <T as Seq<'p, T>>::Item<'b>) -> Maybe<T, &'p T>where
'p: 'b,
fn to_maybe_ref<'b>(item: <T as Seq<'p, T>>::Item<'b>) -> Maybe<T, &'p T>where
'p: 'b,
Convert an item of the sequence into a [
MaybeRef].