pub struct PathEnumerationConfig {
pub max_depth: usize,
pub max_paths: usize,
pub revisit_cap: usize,
pub exit_nodes: Option<AHashSet<i64>>,
pub error_nodes: Option<AHashSet<i64>>,
}Expand description
Configuration for path enumeration.
Fields§
§max_depth: usizeMaximum path length (prevents stack overflow on deep CFGs).
max_paths: usizeMaximum number of paths to enumerate (prevents exponential explosion).
revisit_cap: usizeMaximum times a node can be revisited (controls loop unrolling).
exit_nodes: Option<AHashSet<i64>>Exit nodes (Normal paths end here).
error_nodes: Option<AHashSet<i64>>Error nodes (Error paths end here).
Trait Implementations§
Source§impl Clone for PathEnumerationConfig
impl Clone for PathEnumerationConfig
Source§fn clone(&self) -> PathEnumerationConfig
fn clone(&self) -> PathEnumerationConfig
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 PathEnumerationConfig
impl Debug for PathEnumerationConfig
Auto Trait Implementations§
impl Freeze for PathEnumerationConfig
impl RefUnwindSafe for PathEnumerationConfig
impl Send for PathEnumerationConfig
impl Sync for PathEnumerationConfig
impl Unpin for PathEnumerationConfig
impl UnwindSafe for PathEnumerationConfig
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,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more