pub enum Effect {
Write {
region: Region,
off: i32,
val: ValueClass,
},
Read {
region: Region,
off: i32,
},
NewRegion(Region),
Call(CallTarget),
Syscall(u32),
Branch,
Ret(ValueClass),
Capped,
}Expand description
One observable thing the function did. Order matters.
Variants§
Write
wrote val into region at a bucketed offset
Read
read a distinct field (region + offset). recorded once per field, so it captures the set of struct fields a function touches, not every access.
NewRegion(Region)
first touch of a fresh region (shape signal: how many buffers it walks)
Call(CallTarget)
Syscall(u32)
Branch
a conditional branch happened here. we don’t keep the outcome, just that the function has a decision point at this point in the effect stream.
Ret(ValueClass)
Capped
run hit a cap (loop/instr/time). still a usable partial.
Implementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Effect
impl<'de> Deserialize<'de> for Effect
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
impl Eq for Effect
impl StructuralPartialEq for Effect
Auto Trait Implementations§
impl Freeze for Effect
impl RefUnwindSafe for Effect
impl Send for Effect
impl Sync for Effect
impl Unpin for Effect
impl UnsafeUnpin for Effect
impl UnwindSafe for Effect
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