#[repr(i64)]pub enum CallEffectKind {
ExprAnnotation = 0,
Pure = 1,
ReadState = 2,
UpdateState = 3,
SpecialCallArg = 4,
EmbedInfo = 5,
ControlJump = 6,
}Expand description
The runtime effect of an operator call (C++ CallEffectKind), the value of
op_attr::CALL_EFFECT_KIND.
Variants§
ExprAnnotation = 0
An annotation, such as likely, which can be translated to the identity.
Pure = 1
A pure function, which does not interact with any external state.
ReadState = 2
A function that may read from states, such as memory.
UpdateState = 3
A function that may read from and write to states, such as memory; also
CallEffectKind::Opaque.
SpecialCallArg = 4
A special intrinsic that annotates call arguments, valid only as a direct argument to a call.
EmbedInfo = 5
Opaque information embedded in the expression, which cannot be generated as code.
ControlJump = 6
A function that changes the control flow.
Implementations§
Source§impl CallEffectKind
impl CallEffectKind
Sourcepub const Opaque: Self = Self::UpdateState
pub const Opaque: Self = Self::UpdateState
An opaque function, about which nothing can be assumed: C++ kOpaque, which is
CallEffectKind::UpdateState.
Trait Implementations§
Source§impl Clone for CallEffectKind
impl Clone for CallEffectKind
Source§fn clone(&self) -> CallEffectKind
fn clone(&self) -> CallEffectKind
Returns a copy 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 CallEffectKind
impl Debug for CallEffectKind
Source§impl From<CallEffectKind> for Any
impl From<CallEffectKind> for Any
Source§fn from(kind: CallEffectKind) -> Self
fn from(kind: CallEffectKind) -> Self
Converts to this type from the input type.
Source§impl Hash for CallEffectKind
impl Hash for CallEffectKind
Source§impl PartialEq for CallEffectKind
impl PartialEq for CallEffectKind
impl Copy for CallEffectKind
impl Eq for CallEffectKind
impl StructuralPartialEq for CallEffectKind
Auto Trait Implementations§
impl Freeze for CallEffectKind
impl RefUnwindSafe for CallEffectKind
impl Send for CallEffectKind
impl Sync for CallEffectKind
impl Unpin for CallEffectKind
impl UnwindSafe for CallEffectKind
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