Module: FFI::NativeType
Relationships & Source Files | |
Defined in: | ext/ffi_c/Type.c |
Overview
This module defines constants for C native types.
Native type constants
Native types are defined by constants and aliases:
-
INT8, SCHAR, CHAR
-
UINT8, UCHAR
-
INT16, SHORT, SSHORT
-
UINT16, USHORT
-
INT32,, INT, SINT
-
UINT32, UINT
-
INT64, LONG_LONG, SLONG_LONG
-
UINT64, ULONG_LONG
-
LONG, SLONG
-
ULONG
-
FLOAT32, FLOAT
-
FLOAT64, DOUBLE
-
LONGDOUBLE (if the native platform has ‘long double`)
-
POINTER
-
BOOL
-
STRING (immutable string, null terminated)
For function return type only:
-
VOID
For function argument type only:
-
BUFFER_IN
-
BUFFER_OUT
-
BUFFER_INOUT
-
VARARGS (function takes a variable number of arguments)
They are objects of the class Type::Builtin
.
Non-alias (the first name in each bullet point) constants are also exported to modules NativeType
and (prefixed with TYPE_
) ::FFI
. All constants and aliases above are exported to the Type
class, as well as the following aliases:
-
Array (
ArrayType
)