pub struct EventReferences { /* private fields */ }Expand description
The EventReferences struct contains for every variable v in a
trace, the set of all it’s immediate dependencies, i.e. all the
symbols used to directly define v, as computed by uses_in_exp.
Implementations§
Source§impl EventReferences
impl EventReferences
pub fn from_events<B, E: Borrow<Event<B>>>(events: &[E]) -> Self
Sourcepub fn dependencies(&self, symbol: Sym) -> HashSet<Sym>
pub fn dependencies(&self, symbol: Sym) -> HashSet<Sym>
Follow all the dependencies of a symbol in the events, returning the set of symbols it recursively depends on, (including itself).
Sourcepub fn taints<B: BV, E: Borrow<Event<B>>>(
&self,
symbol: Sym,
events: &[E],
) -> (Taints, bool)
pub fn taints<B: BV, E: Borrow<Event<B>>>( &self, symbol: Sym, events: &[E], ) -> (Taints, bool)
Returns the set of registers a symbolic variable is tainted by, i.e. any symbolic registers upon which the variable depends upon. Also returns whether the value depends upon a symbolic memory read.
Sourcepub fn value_taints<B: BV, E: Borrow<Event<B>>>(
&self,
val: &Val<B>,
events: &[E],
) -> (Taints, bool)
pub fn value_taints<B: BV, E: Borrow<Event<B>>>( &self, val: &Val<B>, events: &[E], ) -> (Taints, bool)
Like taints but for all symbolic variables in a value
pub fn collect_taints<B: BV, E: Borrow<Event<B>>>( &self, symbol: Sym, events: &[E], taints: &mut Taints, memory: &mut bool, )
pub fn collect_value_taints<B: BV, E: Borrow<Event<B>>>( &self, val: &Val<B>, events: &[E], taints: &mut Taints, memory: &mut bool, )
Auto Trait Implementations§
impl Freeze for EventReferences
impl RefUnwindSafe for EventReferences
impl Send for EventReferences
impl Sync for EventReferences
impl Unpin for EventReferences
impl UnsafeUnpin for EventReferences
impl UnwindSafe for EventReferences
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