#ifndef NSTD_NSTD_H
#define NSTD_NSTD_H
#include "os/os.h"
#if __STDC_VERSION__ < 202311L
# include <stdbool.h>
#endif
#include <stddef.h>
#include <stdint.h>
#ifdef __cplusplus
# define NSTDCPP __cplusplus
#endif
#if NSTD_OS_WINDOWS
# ifdef NSTDCPP
# define NSTDAPI extern "C" __declspec(dllexport)
# else
# define NSTDAPI extern __declspec(dllexport)
# endif
#else
# ifdef NSTDCPP
# define NSTDAPI extern "C"
# else
# define NSTDAPI extern
# endif
#endif
#ifndef NSTDCPP
# define NSTD_NULL NULL
#else
# define NSTD_NULL nullptr
#endif
#define NSTD_FALSE false
#define NSTD_TRUE true
typedef ptrdiff_t NSTDInt;
typedef size_t NSTDUInt;
typedef int_least8_t NSTDInt8;
typedef uint_least8_t NSTDUInt8;
typedef int_least16_t NSTDInt16;
typedef uint_least16_t NSTDUInt16;
typedef int_least32_t NSTDInt32;
typedef uint_least32_t NSTDUInt32;
typedef int_least64_t NSTDInt64;
typedef uint_least64_t NSTDUInt64;
typedef float NSTDFloat32;
typedef double NSTDFloat64;
typedef char NSTDChar;
typedef NSTDUInt8 NSTDChar8;
typedef NSTDUInt16 NSTDChar16;
typedef NSTDUInt32 NSTDChar32;
typedef bool NSTDBool;
typedef const void *NSTDAny;
typedef void *NSTDAnyMut;
typedef const void *NSTDRef;
typedef void *NSTDRefMut;
typedef const void *NSTDAnyRef;
typedef void *NSTDAnyRefMut;
#endif