123456789_123456789_123456789_123456789_123456789_

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: