Lazuli
stdint.h
Go to the documentation of this file.
1 /*
2  * SPDX-License-Identifier: GPL-3.0-only
3  * This file is part of Lazuli.
4  */
5 
21 #ifndef STDINT_H
22 #define STDINT_H
23 
27 typedef char int8_t;
28 
32 typedef int int16_t;
33 
37 typedef long int32_t;
38 
42 typedef char int_fast8_t;
43 
47 typedef int int_fast16_t;
48 
52 typedef long int_fast32_t;
53 
57 typedef unsigned char int_least8_t;
58 
62 typedef unsigned int int_least16_t;
63 
67 typedef unsigned long int_least32_t;
68 
75 typedef int32_t intmax_t;
76 
84 typedef int16_t intptr_t;
85 
89 typedef unsigned char uint8_t;
90 
94 typedef unsigned int uint16_t;
95 
99 typedef unsigned long uint32_t;
100 
104 typedef unsigned char uint_fast8_t;
105 
109 typedef unsigned int uint_fast16_t;
110 
114 typedef unsigned long uint_fast32_t;
115 
119 typedef unsigned char uint_least8_t;
120 
124 typedef unsigned int uint_least16_t;
125 
129 typedef unsigned long uint_least32_t;
130 
138 
147 
151 #define INT8_MIN ((int8_t)0x80)
152 
156 #define INT16_MIN ((int16_t)0x8000)
157 
161 #define INT32_MIN ((int32_t)0x80000000)
162 
166 #define INT_FAST8_MIN INT8_MIN
167 
171 #define INT_FAST16_MIN INT16_MIN
172 
176 #define INT_FAST32_MIN INT32_MIN
177 
181 #define INT_LEAST8_MIN INT8_MIN
182 
186 #define INT_LEAST16_MIN INT16_MIN
187 
191 #define INT_LEAST32_MIN INT32_MIN
192 
196 #define INTPTR_MIN INT16_MIN
197 
201 #define INT8_MAX ((int8_t)0x7f)
202 
206 #define INT16_MAX ((int16_t)0x7fff)
207 
211 #define INT32_MAX ((int32_t)0x7fffffff)
212 
216 #define INT_FAST8_MAX INT8_MAX
217 
221 #define INT_FAST16_MAX INT16_MAX
222 
226 #define INT_FAST32_MAX INT32_MAX
227 
231 #define INT_LEAST8_MAX INT8_MAX
232 
236 #define INT_LEAST16_MAX INT16_MAX
237 
241 #define INT_LEAST32_MAX INT32_MAX
242 
246 #define INTPTR_MAX INT16_MAX
247 
251 #define UINT8_MAX ((uint8_t)0xff)
252 
256 #define UINT16_MAX ((uint16_t)0xffff)
257 
261 #define UINT32_MAX ((uint32_t)0xffffffff)
262 
266 #define UINT_FAST8_MAX UINT8_MAX
267 
271 #define UINT_FAST16_MAX UINT16_MAX
272 
276 #define UINT_FAST32_MAX UINT32_MAX
277 
281 #define UINT_LEAST8_MAX UINT8_MAX
282 
286 #define UINT_LEAST16_MAX UINT16_MAX
287 
291 #define UINT_LEAST32_MAX UINT32_MAX
292 
296 #define UINTPTR_MAX UINT16_MAX
297 
301 #define UINTMAX_MAX UINT32_MAX
302 
307 #define INT8_C(X) ((int_least8_t)(X))
308 
313 #define INT16_C(X) ((int_least16_t)(X))
314 
319 #define INT32_C(X) ((int_least32_t)(X))
320 
325 #define INTMAX_C(X) ((intmax_t)(X))
326 
331 #define UINT8_C(X) ((uint_least8_t)(X))
332 
337 #define UINT16_C(X) ((uint_least16_t)(X))
338 
343 #define UINT32_C(X) ((uint_least32_t)(X))
344 
349 #define UINTMAX_C(X) ((uintmax_t)(X))
350 
351 /* Format macro constants not defined */
352 
353 #endif /* STDINT_H */
char int8_t
Represents a signed integer type with width of exactly 8 bits.
Definition: stdint.h:27
unsigned long uint32_t
Represents a unsigned integer type with width of exactly 32 bits.
Definition: stdint.h:99
unsigned char uint_fast8_t
Represents the fastest unsigned integer type with width of at least 8 bits.
Definition: stdint.h:104
int16_t intptr_t
Represents an integer capable of holding a pointer.
Definition: stdint.h:84
unsigned long uint_least32_t
Represents the smallest unsigned integer type with width of at least 32 bits.
Definition: stdint.h:129
unsigned int uint_fast16_t
Represents the fastest unsigned integer type with width of at least 16 bits.
Definition: stdint.h:109
int int_fast16_t
Represents the fastest signed integer type with width of at least 16 bits.
Definition: stdint.h:47
unsigned int uint_least16_t
Represents the smallest unsigned integer type with width of at least 16 bits.
Definition: stdint.h:124
unsigned int uint16_t
Represents a unsigned integer type with width of exactly 16 bits.
Definition: stdint.h:94
int32_t intmax_t
Represents the maximum width integer type.
Definition: stdint.h:75
char int_fast8_t
Represents the fastest signed integer type with width of at least 8 bits.
Definition: stdint.h:42
unsigned char uint8_t
Represents a unsigned integer type with width of exactly 8 bits.
Definition: stdint.h:89
unsigned long uint_fast32_t
Represents the fastest unsigned integer type with width of at least 32 bits.
Definition: stdint.h:114
unsigned char int_least8_t
Represents the smallest signed integer type with width of at least 8 bits.
Definition: stdint.h:57
uint16_t uintptr_t
Represents an unsigned integer capable of holding a pointer.
Definition: stdint.h:146
int int16_t
Represents a signed integer type with width of exactly 16 bits.
Definition: stdint.h:32
long int_fast32_t
Represents the fastest signed integer type with width of at least 32 bits.
Definition: stdint.h:52
long int32_t
Represents a signed integer type with width of exactly 32 bits.
Definition: stdint.h:37
unsigned char uint_least8_t
Represents the smallest unsigned integer type with width of at least 8 bits.
Definition: stdint.h:119
uint32_t uintmax_t
Represents the maximum width unsigned integer type.
Definition: stdint.h:137
unsigned long int_least32_t
Represents the smallest signed integer type with width of at least 32 bits.
Definition: stdint.h:67
unsigned int int_least16_t
Represents the smallest signed integer type with width of at least 16 bits.
Definition: stdint.h:62