pub struct ParamSpec {
pub index: u32,
pub name: Option<String>,
pub modifies: Option<bool>,
pub reads: Option<bool>,
pub nullness: Option<Nullness>,
pub escapes: Option<bool>,
pub callback: Option<bool>,
pub semantic: Option<String>,
pub size_from: Option<String>,
pub tainted: Option<bool>,
}Expand description
Per-parameter specification.
Fields§
§index: u32Parameter position (0-indexed).
name: Option<String>Optional human-readable name.
modifies: Option<bool>Parameter’s pointee is modified.
reads: Option<bool>Parameter’s pointee is read.
nullness: Option<Nullness>Nullness requirement/guarantee.
escapes: Option<bool>Pointer may escape function scope.
callback: Option<bool>This is a function pointer that will be called.
semantic: Option<String>Semantic meaning (e.g., allocation_size, byte_count).
size_from: Option<String>Size bound relation (e.g., “param.2” for buffer size).
tainted: Option<bool>Parameter becomes tainted after call (for sources).
Implementations§
Source§impl ParamSpec
impl ParamSpec
Sourcepub fn does_modify(&self) -> bool
pub fn does_modify(&self) -> bool
Check if this parameter modifies its pointee.
Sourcepub fn may_escape(&self) -> bool
pub fn may_escape(&self) -> bool
Check if this parameter may escape.
Sourcepub fn is_callback(&self) -> bool
pub fn is_callback(&self) -> bool
Check if this parameter is a callback.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for ParamSpec
impl<'de> Deserialize<'de> for ParamSpec
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 StructuralPartialEq for ParamSpec
Auto Trait Implementations§
impl Freeze for ParamSpec
impl RefUnwindSafe for ParamSpec
impl Send for ParamSpec
impl Sync for ParamSpec
impl Unpin for ParamSpec
impl UnsafeUnpin for ParamSpec
impl UnwindSafe for ParamSpec
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