pub struct EffectDecl {
pub visibility: Visibility,
pub name: Ident,
pub operations: Vec<EffectOperation>,
pub span: Span,
}Expand description
Algebraic effect declaration: effect IO { fn read() -> String; fn write(s: String); }
Declares a set of operations that a function may perform. Inspired by Koka, OCaml 5, and Scala 3 capabilities.
Fields§
§visibility: Visibility§name: Ident§operations: Vec<EffectOperation>§span: SpanTrait Implementations§
Source§impl Clone for EffectDecl
impl Clone for EffectDecl
Source§fn clone(&self) -> EffectDecl
fn clone(&self) -> EffectDecl
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 EffectDecl
impl Debug for EffectDecl
Source§impl PartialEq for EffectDecl
impl PartialEq for EffectDecl
impl StructuralPartialEq for EffectDecl
Auto Trait Implementations§
impl Freeze for EffectDecl
impl RefUnwindSafe for EffectDecl
impl Send for EffectDecl
impl Sync for EffectDecl
impl Unpin for EffectDecl
impl UnwindSafe for EffectDecl
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