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.