pub enum Role {
Allocator,
Reallocator,
Deallocator,
Source,
Sink,
Sanitizer,
StringOperation,
Io,
Custom(String),
}Expand description
High-level role of a function for analysis purposes.
Variants§
Allocator
Memory allocator (e.g., malloc, new).
Reallocator
Memory reallocator (e.g., realloc).
Deallocator
Memory deallocator (e.g., free, delete).
Source
Taint source (e.g., getenv, recv).
Sink
Taint sink (e.g., system, exec).
Sanitizer
Taint sanitizer (e.g., escape functions).
StringOperation
String operation (e.g., strlen, strcpy).
Io
I/O operation (e.g., read, write).
Custom(String)
Custom role for domain-specific analyses.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Role
impl<'de> Deserialize<'de> for Role
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
Source§impl From<&Role> for SummaryRole
impl From<&Role> for SummaryRole
Source§impl From<&SummaryRole> for Role
impl From<&SummaryRole> for Role
Source§fn from(role: &SummaryRole) -> Self
fn from(role: &SummaryRole) -> Self
Converts to this type from the input type.
impl Eq for Role
impl StructuralPartialEq for Role
Auto Trait Implementations§
impl Freeze for Role
impl RefUnwindSafe for Role
impl Send for Role
impl Sync for Role
impl Unpin for Role
impl UnsafeUnpin for Role
impl UnwindSafe for Role
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,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.