Include/AuroraTypes.h

45 lines
1.4 KiB
C

/***
Copyright (©) 2020 Reece Wilson (a/k/a "Reece").
All rights reserved.
File: AuroraTypes.h
Date: 2020-6-12
Originator: Reece
Purpose:
***/
#pragma once
#if defined(AURORA_COMPILER_MSVC)
typedef signed char int8_ct;
typedef short int16_ct;
typedef int int32_ct;
typedef long long int64_ct;
typedef unsigned char uint8_ct;
typedef unsigned short uint16_ct;
typedef unsigned int uint32_ct;
typedef unsigned long long uint64_ct;
#elif defined(AURORA_COMPILER_CLANG) || defined(AURORA_COMPILER_GCC)
typedef __INT8_TYPE__ int8_ct;
typedef __INT16_TYPE__ int16_ct;
typedef __INT32_TYPE__ int32_ct;
typedef __INT64_TYPE__ int64_ct;
typedef __UINT8_TYPE__ uint8_ct;
typedef __UINT16_TYPE__ uint16_ct;
typedef __UINT32_TYPE__ uint32_ct;
typedef __UINT64_TYPE__ uint64_ct;
#endif
#if defined(AURORA_ARCH_X86)
typedef uint32_ct size_ct;
typedef int32_ct ssize_ct;
#elif defined(AURORA_ARCH_X64)
typedef uint64_ct size_ct;
typedef int64_ct ssize_ct;
#elif defined(AURORA_ARCH_ARM)
typedef uint64_ct size_ct;
typedef int64_ct ssize_ct;
#else
#error unsupported architecture. currently supports: aarch64 x86_64 x86_32
#endif
typedef size_ct Handle_ct;