Enum miri::shims::ffi_support::CArg
source · pub enum CArg {
Int8(i8),
Int16(i16),
Int32(i32),
Int64(i64),
ISize(isize),
UInt8(u8),
UInt16(u16),
UInt32(u32),
UInt64(u64),
USize(usize),
}
Expand description
Enum of supported arguments to external C functions.
Variants
Int8(i8)
8-bit signed integer.
Int16(i16)
16-bit signed integer.
Int32(i32)
32-bit signed integer.
Int64(i64)
64-bit signed integer.
ISize(isize)
isize.
UInt8(u8)
8-bit unsigned integer.
UInt16(u16)
16-bit unsigned integer.
UInt32(u32)
32-bit unsigned integer.
UInt64(u64)
64-bit unsigned integer.
USize(usize)
usize.
Implementations
sourceimpl<'a> CArg
impl<'a> CArg
sourcefn arg_downcast(&'a self) -> Arg<'a>
fn arg_downcast(&'a self) -> Arg<'a>
Convert a CArg
to a libffi
argument type.
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for CArg
impl Send for CArg
impl Sync for CArg
impl Unpin for CArg
impl UnwindSafe for CArg
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<V, T> VZip<V> for Twhere
V: MultiLane<T>,
impl<V, T> VZip<V> for Twhere
V: MultiLane<T>,
fn vzip(self) -> V
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
Size for each variant:
Int8
: 1 byteInt16
: 3 bytesInt32
: 7 bytesInt64
: 15 bytesISize
: 15 bytesUInt8
: 1 byteUInt16
: 3 bytesUInt32
: 7 bytesUInt64
: 15 bytesUSize
: 15 bytes