#pragma once #include "stdint.h" #include "stdio.h" #define NELEM(a) (sizeof(a) / sizeof((a)[0])) #define U8(value) ((u8) (value)) #define U16(value) ((u16) (value)) #define U32(value) ((u32) (value)) #define U64(value) ((u64) (value)) #define S8(value) ((s8) (value)) #define S16(value) ((s16) (value)) #define S32(value) ((s32) (value)) #define S64(value) ((s64) (value)) typedef uint8_t u8; typedef uint16_t u16; typedef uint32_t u24; typedef uint32_t u32; typedef uint64_t u64; typedef int8_t s8; typedef int16_t s16; typedef int32_t s24; typedef int32_t s32; typedef int64_t s64; typedef enum { shark_false, shark_true } shark_bool; #define abs(x) ((x>0)?x:-x)