Module core::ffi

1.30.0 · source · []
Expand description

Platform-specific types, as defined by C.

Code that interacts via FFI will almost certainly be using the base types provided by C, which aren’t nearly as nicely defined as Rust’s primitive types. This module provides types which will match those defined by C, so that code that interacts with C will refer to the correct types.

Structs

An error indicating that no nul byte was present.
VaListExperimental
A wrapper for a va_list
VaListImplExperimental
x86_64 ABI implementation of a va_list.
Representation of a borrowed C string.
An error indicating that a nul byte was not in the expected position.

Enums

Equivalent to C’s void type when used as a pointer.

Type Definitions

NonZero_c_charExperimental
Type alias for NonZero version of c_char
NonZero_c_intExperimental
Type alias for NonZero version of c_int
NonZero_c_longExperimental
Type alias for NonZero version of c_long
NonZero_c_longlongExperimental
Type alias for NonZero version of c_longlong
NonZero_c_scharExperimental
Type alias for NonZero version of c_schar
NonZero_c_shortExperimental
Type alias for NonZero version of c_short
NonZero_c_ucharExperimental
Type alias for NonZero version of c_uchar
NonZero_c_uintExperimental
Type alias for NonZero version of c_uint
NonZero_c_ulongExperimental
Type alias for NonZero version of c_ulong
Type alias for NonZero version of c_ulonglong
NonZero_c_ushortExperimental
Type alias for NonZero version of c_ushort
c_ptrdiff_tExperimental
Equivalent to C’s ptrdiff_t type, from stddef.h (or cstddef for C++).
c_size_tExperimental
Equivalent to C’s size_t type, from stddef.h (or cstddef for C++).
c_ssize_tExperimental
Equivalent to C’s ssize_t (on POSIX) or SSIZE_T (on Windows) type.
Equivalent to C’s char type.
Equivalent to C’s double type.
Equivalent to C’s float type.
Equivalent to C’s signed int (int) type.
Equivalent to C’s signed long (long) type.
Equivalent to C’s signed long long (long long) type.
Equivalent to C’s signed char type.
Equivalent to C’s signed short (short) type.
Equivalent to C’s unsigned char type.
Equivalent to C’s unsigned int type.
Equivalent to C’s unsigned long type.
Equivalent to C’s unsigned long long type.
Equivalent to C’s unsigned short type.
This documentation is an old archive. Please see https://rust.docs.kernel.org instead.