27 lines
693 B
C
27 lines
693 B
C
#pragma once
|
|
#include <stdint.h>
|
|
#include <stddef.h>
|
|
|
|
typedef uint8_t u8;
|
|
typedef uint16_t u16;
|
|
typedef int16_t i16;
|
|
typedef int32_t i32;
|
|
typedef uint32_t u32;
|
|
typedef uint64_t u64;
|
|
typedef float f32;
|
|
typedef double f64;
|
|
typedef uintptr_t uptr;
|
|
typedef char sbyte;
|
|
typedef ptrdiff_t size;
|
|
typedef size_t usize;
|
|
|
|
#define OPTION(type, typeName) \
|
|
struct { \
|
|
enum {NONE, SOME} tag; \
|
|
union { \
|
|
u8 none; \
|
|
type typeName; \
|
|
} some; \
|
|
}
|
|
|