// Copyright (C) 2023, Jakob Wakeling // All rights reserved. #ifndef ESH_UTIL_UTIL_H_WIAX91EM #define ESH_UTIL_UTIL_H_WIAX91EM #include #include #include typedef uint8_t u8; typedef uint16_t u16; typedef uint32_t u32; typedef uint64_t u64; typedef uintptr_t uptr; typedef int8_t s8; typedef int16_t s16; typedef int32_t s32; typedef int64_t s64; typedef intptr_t sptr; typedef float f32; typedef double f64; typedef long double f128; #define U8_MIN UINT8_MIN #define U8_MAX UINT8_MAX #define U16_MIN UINT16_MIN #define U16_MAX UINT16_MAX #define U32_MIN UINT32_MIN #define U32_MAX UINT32_MAX #define U64_MIN UINT64_MIN #define U64_MAX UINT64_MAX #define UPTR_MIN UINTPTR_MIN #define UPTR_MAX UINTPTR_MAX #define S8_MIN INT8_MIN #define S8_MAX INT8_MAX #define S16_MIN INT16_MIN #define S16_MAX INT16_MAX #define S32_MIN INT32_MIN #define S32_MAX INT32_MAX #define S64_MIN INT64_MIN #define S64_MAX INT64_MAX #define SPTR_MIN INTPTR_MIN #define SPTR_MAX INTPTR_MAX #define F32_MIN FLT_MIN #define F32_MAX FLT_MAX #define F64_MIN DBL_MIN #define F64_MAX DBL_MAX #define F128_MIN LDBL_MIN #define F128_MAX LDBL_MAX #define xmalloc(size) _xmalloc(size, __FILE__, __LINE__) #define xcalloc(nmemb, size) _xcalloc(nmemb, size, __FILE__, __LINE__) #define xrealloc(ptr, size) _xrealloc(ptr, size, __FILE__, __LINE__) extern void *_xmalloc(size_t size, const char *file, int line); extern void *_xcalloc(size_t nmemb, size_t size, const char *file, int line); extern void *_xrealloc(void *ptr, size_t size, const char *file, int line); #endif // ESH_UTIL_UTIL_H_WIAX91EM