Struct rustc_target::abi::call::ArgAttributes
source · pub struct ArgAttributes {
pub regular: ArgAttribute,
pub arg_ext: ArgExtension,
pub pointee_size: Size,
pub pointee_align: Option<Align>,
}
Expand description
A compact representation of LLVM attributes (at least those relevant for this module) that can be manipulated without interacting with LLVM’s Attribute machinery.
Fields§
§regular: ArgAttribute
§arg_ext: ArgExtension
§pointee_size: Size
The minimum size of the pointee, guaranteed to be valid for the duration of the whole call (corresponding to LLVM’s dereferenceable and dereferenceable_or_null attributes).
pointee_align: Option<Align>
Implementations§
source§impl ArgAttributes
impl ArgAttributes
pub fn new() -> Self
pub fn ext(&mut self, ext: ArgExtension) -> &mut Self
pub fn set(&mut self, attr: ArgAttribute) -> &mut Self
pub fn contains(&self, attr: ArgAttribute) -> bool
Trait Implementations§
source§impl Clone for ArgAttributes
impl Clone for ArgAttributes
source§fn clone(&self) -> ArgAttributes
fn clone(&self) -> ArgAttributes
Returns a copy 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 ArgAttributes
impl Debug for ArgAttributes
source§impl Hash for ArgAttributes
impl Hash for ArgAttributes
source§impl<__CTX> HashStable<__CTX> for ArgAttributeswhere
__CTX: HashStableContext,
impl<__CTX> HashStable<__CTX> for ArgAttributeswhere
__CTX: HashStableContext,
fn hash_stable(&self, __hcx: &mut __CTX, __hasher: &mut StableHasher)
source§impl PartialEq<ArgAttributes> for ArgAttributes
impl PartialEq<ArgAttributes> for ArgAttributes
source§fn eq(&self, other: &ArgAttributes) -> bool
fn eq(&self, other: &ArgAttributes) -> bool
impl Copy for ArgAttributes
impl Eq for ArgAttributes
impl StructuralEq for ArgAttributes
impl StructuralPartialEq for ArgAttributes
Auto Trait Implementations§
impl RefUnwindSafe for ArgAttributes
impl Send for ArgAttributes
impl Sync for ArgAttributes
impl Unpin for ArgAttributes
impl UnwindSafe for ArgAttributes
Blanket Implementations§
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference’s “Type Layout” chapter for details on type layout guarantees.
Size: 16 bytes