tetl
0.1.0
Embedded Template Library
Loading...
Searching...
No Matches
builtin_types.hpp
Go to the documentation of this file.
1
// SPDX-License-Identifier: BSL-1.0
2
// SPDX-FileCopyrightText: Copyright (C) 2021 Tobias Hienzsch
3
4
#
ifndef
TETL_CONFIG_BUILTIN_TYPES_HPP
5
#
define
TETL_CONFIG_BUILTIN_TYPES_HPP
6
7
#
if
defined
(
TETL_COMPILER_MSVC
)
8
#
define
TETL_BUILTIN_INT8
signed
__int8
9
#
define
TETL_BUILTIN_INT16
signed
__int16
10
#
define
TETL_BUILTIN_INT32
signed
__int32
11
#
define
TETL_BUILTIN_INT64
signed
__int64
12
#
define
TETL_BUILTIN_UINT8
unsigned
__int8
13
#
define
TETL_BUILTIN_UINT16
unsigned
__int16
14
#
define
TETL_BUILTIN_UINT32
unsigned
__int32
15
#
define
TETL_BUILTIN_UINT64
unsigned
__int64
16
17
#
define
TETL_BUILTIN_INTPTR
TETL_BUILTIN_INT64
18
#
define
TETL_BUILTIN_UINTPTR
TETL_BUILTIN_UINT64
19
#
define
TETL_BUILTIN_INTMAX
TETL_BUILTIN_INT64
20
#
define
TETL_BUILTIN_UINTMAX
TETL_BUILTIN_UINT64
21
#
define
TETL_BUILTIN_SIZET
decltype
(
sizeof
(
nullptr
)
)
22
#
define
TETL_BUILTIN_PTRDIFF
TETL_BUILTIN_INT64
23
#
else
24
#
define
TETL_BUILTIN_INT8
__INT8_TYPE__
25
#
define
TETL_BUILTIN_INT16
__INT16_TYPE__
26
#
define
TETL_BUILTIN_INT32
__INT32_TYPE__
27
#
define
TETL_BUILTIN_INT64
__INT64_TYPE__
28
#
define
TETL_BUILTIN_UINT8
__UINT8_TYPE__
29
#
define
TETL_BUILTIN_UINT16
__UINT16_TYPE__
30
#
define
TETL_BUILTIN_UINT32
__UINT32_TYPE__
31
#
define
TETL_BUILTIN_UINT64
__UINT64_TYPE__
32
33
#
define
TETL_BUILTIN_INTPTR
__INTPTR_TYPE__
34
#
define
TETL_BUILTIN_UINTPTR
__UINTPTR_TYPE__
35
#
define
TETL_BUILTIN_INTMAX
__INTMAX_TYPE__
36
#
define
TETL_BUILTIN_UINTMAX
__UINTMAX_TYPE__
37
#
define
TETL_BUILTIN_SIZET
__SIZE_TYPE__
38
#
define
TETL_BUILTIN_PTRDIFF
__PTRDIFF_TYPE__
39
#
endif
40
41
#
if
!
defined
(
TETL_WCHAR_MIN
)
42
#
if
defined
(
__WCHAR_MIN__
)
43
#
define
TETL_WCHAR_MIN
__WCHAR_MIN__
44
#
elif
defined
(
__WCHAR_UNSIGNED__
)
||
(
L'\0'
-
1
>
0
)
45
#
define
TETL_WCHAR_MIN
(
0
+
L'\0'
)
46
#
else
47
#
define
TETL_WCHAR_MIN
(
-
0x7fffffff
-
1
+
L'\0'
)
48
#
endif
49
#
endif
// TETL_WCHAR_MIN
50
51
#
if
!
defined
(
TETL_WCHAR_MAX
)
52
#
if
defined
(
__WCHAR_MAX__
)
53
#
define
TETL_WCHAR_MAX
__WCHAR_MAX__
54
#
elif
defined
(
__WCHAR_UNSIGNED__
)
||
(
L'\0'
-
1
>
0
)
55
#
define
TETL_WCHAR_MAX
(
0xffffffffu
+
L'\0'
)
56
#
else
57
#
define
TETL_WCHAR_MAX
(
0x7fffffff
+
L'\0'
)
58
#
endif
59
#
endif
// TETL_WCHAR_MAX
60
61
#
endif
// TETL_CONFIG_BUILTIN_TYPES_HPP
include
etl
_config
builtin_types.hpp
Generated on Sun Sep 7 2025 19:14:53 for tetl by
1.9.8