system/ctypes
Source Edit Some type definitions for compatibility between different backends and platforms.
Types
BiggestFloat = float64
- is an alias for the biggest floating point type the Nim compiler supports. Currently this is
float64, but it is platform-dependent in general. Source Edit BiggestInt = int64
- is an alias for the biggest signed integer type the Nim compiler supports. Currently this is
int64, but it is platform-dependent in general. Source Edit BiggestUInt = uint64
- is an alias for the biggest unsigned integer type the Nim compiler supports. Currently this is
uint64, but it is platform-dependent in general. Source Edit ByteAddress {....deprecated: "use `uint`".} = int -
Deprecated: use `uint`
is the signed integer type that should be used for converting pointers to integer addresses for readability. Source Edit cchar {.importc: "char", nodecl.} = char - This is the same as the type
char in C. Source Edit cdouble {.importc: "double", nodecl.} = float64 - This is the same as the type
double in C. Source Edit cfloat {.importc: "float", nodecl.} = float32 - This is the same as the type
float in C. Source Edit cint {.importc: "int", nodecl.} = int32 - This is the same as the type
int in C. Source Edit clong {.importc: "long", nodecl.} = int32 - This is the same as the type
long in C. Source Edit clongdouble {.importc: "long double", nodecl.} = BiggestFloat - This is the same as the type
long double in C. This C type is not supported by Nim's code generator. Source Edit clonglong {.importc: "long long", nodecl.} = int64 - This is the same as the type
long long in C. Source Edit cschar {.importc: "signed char", nodecl.} = int8 - This is the same as the type
signed char in C. Source Edit cshort {.importc: "short", nodecl.} = int16 - This is the same as the type
short in C. Source Edit csize_t {.importc: "size_t", nodecl.} = uint - This is the same as the type
size_t in C. Source Edit cstringArray {.importc: "char**", nodecl.} = ptr UncheckedArray[cstring] - This is binary compatible to the type
char** in C. The array's high value is large enough to disable bounds checking in practice. Use cstringArrayToSeq proc to convert it into a seq[string]. Source Edit cuchar {.importc: "unsigned char", nodecl,
...deprecated: "use `char` or `uint8` instead".} = char -
Deprecated: use `char` or `uint8` instead
Deprecated: Use uint8 instead. Source Edit cuint {.importc: "unsigned int", nodecl.} = uint32 - This is the same as the type
unsigned int in C. Source Edit culong {.importc: "unsigned long", nodecl.} = uint32 - This is the same as the type
unsigned long in C. Source Edit culonglong {.importc: "unsigned long long", nodecl.} = uint64 - This is the same as the type
unsigned long long in C. Source Edit cushort {.importc: "unsigned short", nodecl.} = uint16 - This is the same as the type
unsigned short in C. Source Edit PFloat32 {....deprecated: "use `ptr float32`".} = ptr float32 -
Deprecated: use `ptr float32`
An alias for ptr float32. Source Edit PFloat64 {....deprecated: "use `ptr float64`".} = ptr float64 -
Deprecated: use `ptr float64`
An alias for ptr float64. Source Edit PInt32 {....deprecated: "use `ptr int32`".} = ptr int32 -
Deprecated: use `ptr int32`
An alias for ptr int32. Source Edit PInt64 {....deprecated: "use `ptr int64`".} = ptr int64 -
Deprecated: use `ptr int64`
An alias for ptr int64. Source Edit