annotate SDL3/SDL_test_fuzzer.h @ 1:20d02a178406 default tip

*: check in everything else yay
author Paper <paper@tflc.us>
date Mon, 05 Jan 2026 02:15:46 -0500
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
1 /*
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
2 Simple DirectMedia Layer
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
3 Copyright (C) 1997-2025 Sam Lantinga <slouken@libsdl.org>
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
4
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
5 This software is provided 'as-is', without any express or implied
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
6 warranty. In no event will the authors be held liable for any damages
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
7 arising from the use of this software.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
8
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
9 Permission is granted to anyone to use this software for any purpose,
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
10 including commercial applications, and to alter it and redistribute it
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
11 freely, subject to the following restrictions:
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
12
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
13 1. The origin of this software must not be misrepresented; you must not
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
14 claim that you wrote the original software. If you use this software
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
15 in a product, an acknowledgment in the product documentation would be
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
16 appreciated but is not required.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
17 2. Altered source versions must be plainly marked as such, and must not be
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
18 misrepresented as being the original software.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
19 3. This notice may not be removed or altered from any source distribution.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
20 */
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
21
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
22 /**
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
23 * Fuzzer functions of SDL test framework.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
24 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
25 * This code is a part of the SDL test library, not the main SDL library.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
26 */
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
27
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
28 /*
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
29
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
30 Data generators for fuzzing test data in a reproducible way.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
31
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
32 */
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
33
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
34 #ifndef SDL_test_fuzzer_h_
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
35 #define SDL_test_fuzzer_h_
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
36
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
37 #include <SDL3/SDL_stdinc.h>
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
38
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
39 #include <SDL3/SDL_begin_code.h>
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
40 /* Set up for C function definitions, even when using C++ */
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
41 #ifdef __cplusplus
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
42 extern "C" {
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
43 #endif
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
44
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
45 /*
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
46 Based on GSOC code by Markus Kauppila <markus.kauppila@gmail.com>
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
47 */
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
48
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
49 /**
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
50 * Note: The fuzzer implementation uses a static instance of random context
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
51 * internally which makes it thread-UNsafe.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
52 */
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
53
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
54 /**
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
55 * Initializes the fuzzer for a test
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
56 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
57 * \param execKey Execution "Key" that initializes the random number generator uniquely for the test.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
58 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
59 */
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
60 void SDLCALL SDLTest_FuzzerInit(Uint64 execKey);
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
61
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
62 /**
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
63 * Returns a random Uint8
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
64 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
65 * \returns a generated integer
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
66 */
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
67 Uint8 SDLCALL SDLTest_RandomUint8(void);
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
68
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
69 /**
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
70 * Returns a random Sint8
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
71 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
72 * \returns a generated signed integer
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
73 */
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
74 Sint8 SDLCALL SDLTest_RandomSint8(void);
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
75
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
76 /**
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
77 * Returns a random Uint16
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
78 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
79 * \returns a generated integer
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
80 */
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
81 Uint16 SDLCALL SDLTest_RandomUint16(void);
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
82
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
83 /**
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
84 * Returns a random Sint16
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
85 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
86 * \returns a generated signed integer
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
87 */
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
88 Sint16 SDLCALL SDLTest_RandomSint16(void);
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
89
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
90 /**
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
91 * Returns a random integer
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
92 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
93 * \returns a generated integer
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
94 */
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
95 Sint32 SDLCALL SDLTest_RandomSint32(void);
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
96
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
97 /**
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
98 * Returns a random positive integer
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
99 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
100 * \returns a generated integer
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
101 */
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
102 Uint32 SDLCALL SDLTest_RandomUint32(void);
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
103
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
104 /**
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
105 * Returns random Uint64.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
106 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
107 * \returns a generated integer
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
108 */
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
109 Uint64 SDLTest_RandomUint64(void);
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
110
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
111 /**
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
112 * Returns random Sint64.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
113 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
114 * \returns a generated signed integer
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
115 */
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
116 Sint64 SDLCALL SDLTest_RandomSint64(void);
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
117
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
118 /**
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
119 * \returns a random float in range [0.0 - 1.0]
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
120 */
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
121 float SDLCALL SDLTest_RandomUnitFloat(void);
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
122
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
123 /**
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
124 * \returns a random double in range [0.0 - 1.0]
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
125 */
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
126 double SDLCALL SDLTest_RandomUnitDouble(void);
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
127
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
128 /**
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
129 * \returns a random float.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
130 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
131 */
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
132 float SDLCALL SDLTest_RandomFloat(void);
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
133
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
134 /**
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
135 * \returns a random double.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
136 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
137 */
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
138 double SDLCALL SDLTest_RandomDouble(void);
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
139
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
140 /**
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
141 * Returns a random boundary value for Uint8 within the given boundaries.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
142 * Boundaries are inclusive, see the usage examples below. If validDomain
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
143 * is true, the function will only return valid boundaries, otherwise non-valid
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
144 * boundaries are also possible.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
145 * If boundary1 > boundary2, the values are swapped
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
146 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
147 * Usage examples:
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
148 * RandomUint8BoundaryValue(10, 20, true) returns 10, 11, 19 or 20
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
149 * RandomUint8BoundaryValue(1, 20, false) returns 0 or 21
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
150 * RandomUint8BoundaryValue(0, 99, false) returns 100
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
151 * RandomUint8BoundaryValue(0, 255, false) returns 0 (error set)
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
152 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
153 * \param boundary1 Lower boundary limit
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
154 * \param boundary2 Upper boundary limit
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
155 * \param validDomain Should the generated boundary be valid (=within the bounds) or not?
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
156 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
157 * \returns a random boundary value for the given range and domain or 0 with error set
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
158 */
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
159 Uint8 SDLCALL SDLTest_RandomUint8BoundaryValue(Uint8 boundary1, Uint8 boundary2, bool validDomain);
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
160
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
161 /**
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
162 * Returns a random boundary value for Uint16 within the given boundaries.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
163 * Boundaries are inclusive, see the usage examples below. If validDomain
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
164 * is true, the function will only return valid boundaries, otherwise non-valid
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
165 * boundaries are also possible.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
166 * If boundary1 > boundary2, the values are swapped
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
167 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
168 * Usage examples:
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
169 * RandomUint16BoundaryValue(10, 20, true) returns 10, 11, 19 or 20
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
170 * RandomUint16BoundaryValue(1, 20, false) returns 0 or 21
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
171 * RandomUint16BoundaryValue(0, 99, false) returns 100
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
172 * RandomUint16BoundaryValue(0, 0xFFFF, false) returns 0 (error set)
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
173 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
174 * \param boundary1 Lower boundary limit
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
175 * \param boundary2 Upper boundary limit
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
176 * \param validDomain Should the generated boundary be valid (=within the bounds) or not?
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
177 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
178 * \returns a random boundary value for the given range and domain or 0 with error set
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
179 */
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
180 Uint16 SDLCALL SDLTest_RandomUint16BoundaryValue(Uint16 boundary1, Uint16 boundary2, bool validDomain);
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
181
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
182 /**
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
183 * Returns a random boundary value for Uint32 within the given boundaries.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
184 * Boundaries are inclusive, see the usage examples below. If validDomain
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
185 * is true, the function will only return valid boundaries, otherwise non-valid
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
186 * boundaries are also possible.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
187 * If boundary1 > boundary2, the values are swapped
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
188 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
189 * Usage examples:
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
190 * RandomUint32BoundaryValue(10, 20, true) returns 10, 11, 19 or 20
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
191 * RandomUint32BoundaryValue(1, 20, false) returns 0 or 21
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
192 * RandomUint32BoundaryValue(0, 99, false) returns 100
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
193 * RandomUint32BoundaryValue(0, 0xFFFFFFFF, false) returns 0 (with error set)
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
194 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
195 * \param boundary1 Lower boundary limit
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
196 * \param boundary2 Upper boundary limit
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
197 * \param validDomain Should the generated boundary be valid (=within the bounds) or not?
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
198 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
199 * \returns a random boundary value for the given range and domain or 0 with error set
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
200 */
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
201 Uint32 SDLCALL SDLTest_RandomUint32BoundaryValue(Uint32 boundary1, Uint32 boundary2, bool validDomain);
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
202
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
203 /**
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
204 * Returns a random boundary value for Uint64 within the given boundaries.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
205 * Boundaries are inclusive, see the usage examples below. If validDomain
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
206 * is true, the function will only return valid boundaries, otherwise non-valid
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
207 * boundaries are also possible.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
208 * If boundary1 > boundary2, the values are swapped
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
209 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
210 * Usage examples:
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
211 * RandomUint64BoundaryValue(10, 20, true) returns 10, 11, 19 or 20
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
212 * RandomUint64BoundaryValue(1, 20, false) returns 0 or 21
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
213 * RandomUint64BoundaryValue(0, 99, false) returns 100
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
214 * RandomUint64BoundaryValue(0, 0xFFFFFFFFFFFFFFFF, false) returns 0 (with error set)
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
215 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
216 * \param boundary1 Lower boundary limit
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
217 * \param boundary2 Upper boundary limit
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
218 * \param validDomain Should the generated boundary be valid (=within the bounds) or not?
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
219 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
220 * \returns a random boundary value for the given range and domain or 0 with error set
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
221 */
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
222 Uint64 SDLCALL SDLTest_RandomUint64BoundaryValue(Uint64 boundary1, Uint64 boundary2, bool validDomain);
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
223
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
224 /**
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
225 * Returns a random boundary value for Sint8 within the given boundaries.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
226 * Boundaries are inclusive, see the usage examples below. If validDomain
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
227 * is true, the function will only return valid boundaries, otherwise non-valid
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
228 * boundaries are also possible.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
229 * If boundary1 > boundary2, the values are swapped
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
230 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
231 * Usage examples:
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
232 * RandomSint8BoundaryValue(-10, 20, true) returns -11, -10, 19 or 20
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
233 * RandomSint8BoundaryValue(-100, -10, false) returns -101 or -9
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
234 * RandomSint8BoundaryValue(SINT8_MIN, 99, false) returns 100
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
235 * RandomSint8BoundaryValue(SINT8_MIN, SINT8_MAX, false) returns SINT8_MIN (== error value) with error set
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
236 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
237 * \param boundary1 Lower boundary limit
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
238 * \param boundary2 Upper boundary limit
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
239 * \param validDomain Should the generated boundary be valid (=within the bounds) or not?
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
240 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
241 * \returns a random boundary value for the given range and domain or SINT8_MIN with error set
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
242 */
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
243 Sint8 SDLCALL SDLTest_RandomSint8BoundaryValue(Sint8 boundary1, Sint8 boundary2, bool validDomain);
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
244
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
245 /**
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
246 * Returns a random boundary value for Sint16 within the given boundaries.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
247 * Boundaries are inclusive, see the usage examples below. If validDomain
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
248 * is true, the function will only return valid boundaries, otherwise non-valid
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
249 * boundaries are also possible.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
250 * If boundary1 > boundary2, the values are swapped
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
251 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
252 * Usage examples:
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
253 * RandomSint16BoundaryValue(-10, 20, true) returns -11, -10, 19 or 20
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
254 * RandomSint16BoundaryValue(-100, -10, false) returns -101 or -9
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
255 * RandomSint16BoundaryValue(SINT16_MIN, 99, false) returns 100
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
256 * RandomSint16BoundaryValue(SINT16_MIN, SINT16_MAX, false) returns SINT16_MIN (== error value) with error set
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
257 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
258 * \param boundary1 Lower boundary limit
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
259 * \param boundary2 Upper boundary limit
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
260 * \param validDomain Should the generated boundary be valid (=within the bounds) or not?
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
261 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
262 * \returns a random boundary value for the given range and domain or SINT16_MIN with error set
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
263 */
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
264 Sint16 SDLCALL SDLTest_RandomSint16BoundaryValue(Sint16 boundary1, Sint16 boundary2, bool validDomain);
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
265
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
266 /**
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
267 * Returns a random boundary value for Sint32 within the given boundaries.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
268 * Boundaries are inclusive, see the usage examples below. If validDomain
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
269 * is true, the function will only return valid boundaries, otherwise non-valid
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
270 * boundaries are also possible.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
271 * If boundary1 > boundary2, the values are swapped
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
272 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
273 * Usage examples:
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
274 * RandomSint32BoundaryValue(-10, 20, true) returns -11, -10, 19 or 20
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
275 * RandomSint32BoundaryValue(-100, -10, false) returns -101 or -9
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
276 * RandomSint32BoundaryValue(SINT32_MIN, 99, false) returns 100
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
277 * RandomSint32BoundaryValue(SINT32_MIN, SINT32_MAX, false) returns SINT32_MIN (== error value)
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
278 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
279 * \param boundary1 Lower boundary limit
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
280 * \param boundary2 Upper boundary limit
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
281 * \param validDomain Should the generated boundary be valid (=within the bounds) or not?
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
282 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
283 * \returns a random boundary value for the given range and domain or SINT32_MIN with error set
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
284 */
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
285 Sint32 SDLCALL SDLTest_RandomSint32BoundaryValue(Sint32 boundary1, Sint32 boundary2, bool validDomain);
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
286
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
287 /**
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
288 * Returns a random boundary value for Sint64 within the given boundaries.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
289 * Boundaries are inclusive, see the usage examples below. If validDomain
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
290 * is true, the function will only return valid boundaries, otherwise non-valid
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
291 * boundaries are also possible.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
292 * If boundary1 > boundary2, the values are swapped
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
293 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
294 * Usage examples:
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
295 * RandomSint64BoundaryValue(-10, 20, true) returns -11, -10, 19 or 20
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
296 * RandomSint64BoundaryValue(-100, -10, false) returns -101 or -9
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
297 * RandomSint64BoundaryValue(SINT64_MIN, 99, false) returns 100
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
298 * RandomSint64BoundaryValue(SINT64_MIN, SINT64_MAX, false) returns SINT64_MIN (== error value) and error set
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
299 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
300 * \param boundary1 Lower boundary limit
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
301 * \param boundary2 Upper boundary limit
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
302 * \param validDomain Should the generated boundary be valid (=within the bounds) or not?
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
303 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
304 * \returns a random boundary value for the given range and domain or SINT64_MIN with error set
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
305 */
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
306 Sint64 SDLCALL SDLTest_RandomSint64BoundaryValue(Sint64 boundary1, Sint64 boundary2, bool validDomain);
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
307
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
308 /**
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
309 * Returns integer in range [min, max] (inclusive).
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
310 * Min and max values can be negative values.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
311 * If Max in smaller than min, then the values are swapped.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
312 * Min and max are the same value, that value will be returned.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
313 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
314 * \param min Minimum inclusive value of returned random number
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
315 * \param max Maximum inclusive value of returned random number
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
316 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
317 * \returns a generated random integer in range
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
318 */
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
319 Sint32 SDLCALL SDLTest_RandomIntegerInRange(Sint32 min, Sint32 max);
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
320
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
321 /**
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
322 * Generates random null-terminated string. The minimum length for
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
323 * the string is 1 character, maximum length for the string is 255
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
324 * characters and it can contain ASCII characters from 32 to 126.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
325 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
326 * Note: Returned string needs to be deallocated.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
327 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
328 * \returns a newly allocated random string; or NULL if length was invalid or string could not be allocated.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
329 */
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
330 char * SDLCALL SDLTest_RandomAsciiString(void);
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
331
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
332 /**
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
333 * Generates random null-terminated string. The maximum length for
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
334 * the string is defined by the maxLength parameter.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
335 * String can contain ASCII characters from 32 to 126.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
336 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
337 * Note: Returned string needs to be deallocated.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
338 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
339 * \param maxLength The maximum length of the generated string.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
340 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
341 * \returns a newly allocated random string; or NULL if maxLength was invalid or string could not be allocated.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
342 */
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
343 char * SDLCALL SDLTest_RandomAsciiStringWithMaximumLength(int maxLength);
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
344
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
345 /**
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
346 * Generates random null-terminated string. The length for
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
347 * the string is defined by the size parameter.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
348 * String can contain ASCII characters from 32 to 126.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
349 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
350 * Note: Returned string needs to be deallocated.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
351 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
352 * \param size The length of the generated string
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
353 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
354 * \returns a newly allocated random string; or NULL if size was invalid or string could not be allocated.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
355 */
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
356 char * SDLCALL SDLTest_RandomAsciiStringOfSize(int size);
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
357
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
358 /**
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
359 * Get the invocation count for the fuzzer since last ...FuzzerInit.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
360 *
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
361 * \returns the invocation count.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
362 */
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
363 int SDLCALL SDLTest_GetFuzzerInvocationCount(void);
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
364
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
365 /* Ends C function definitions when using C++ */
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
366 #ifdef __cplusplus
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
367 }
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
368 #endif
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
369 #include <SDL3/SDL_close_code.h>
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
370
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
371 #endif /* SDL_test_fuzzer_h_ */