ruby2d 0.12.1 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/LICENSE.md +7 -0
- data/README.md +141 -0
- data/USAGE.md +2435 -0
- data/assets/Rakefile +637 -0
- data/assets/build_support/CMakeLists.txt +94 -0
- data/assets/build_support/mruby/build_config.rb +34 -0
- data/assets/build_support/mruby/build_config_wasm.rb +30 -0
- data/assets/build_support/sdl_test.c +174 -0
- data/assets/deps.yaml +16 -0
- data/assets/platform/include/SDL3/SDL.h +91 -0
- data/assets/platform/include/SDL3/SDL_assert.h +705 -0
- data/assets/platform/include/SDL3/SDL_asyncio.h +550 -0
- data/assets/platform/include/SDL3/SDL_atomic.h +692 -0
- data/assets/platform/include/SDL3/SDL_audio.h +2370 -0
- data/assets/platform/include/SDL3/SDL_begin_code.h +553 -0
- data/assets/{include/SDL2 → platform/include/SDL3}/SDL_bits.h +47 -27
- data/assets/{include/SDL2 → platform/include/SDL3}/SDL_blendmode.h +59 -55
- data/assets/platform/include/SDL3/SDL_camera.h +535 -0
- data/assets/platform/include/SDL3/SDL_clipboard.h +331 -0
- data/assets/{include/SDL2/close_code.h → platform/include/SDL3/SDL_close_code.h} +9 -8
- data/assets/{include/SDL2 → platform/include/SDL3}/SDL_copying.h +3 -1
- data/assets/platform/include/SDL3/SDL_cpuinfo.h +374 -0
- data/assets/platform/include/SDL3/SDL_dialog.h +343 -0
- data/assets/platform/include/SDL3/SDL_dlopennote.h +234 -0
- data/assets/{include/SDL2 → platform/include/SDL3}/SDL_egl.h +11 -8
- data/assets/platform/include/SDL3/SDL_endian.h +645 -0
- data/assets/platform/include/SDL3/SDL_error.h +226 -0
- data/assets/platform/include/SDL3/SDL_events.h +1645 -0
- data/assets/platform/include/SDL3/SDL_filesystem.h +537 -0
- data/assets/platform/include/SDL3/SDL_gamepad.h +1656 -0
- data/assets/platform/include/SDL3/SDL_gpu.h +4608 -0
- data/assets/platform/include/SDL3/SDL_guid.h +106 -0
- data/assets/platform/include/SDL3/SDL_haptic.h +1461 -0
- data/assets/platform/include/SDL3/SDL_hidapi.h +571 -0
- data/assets/platform/include/SDL3/SDL_hints.h +5001 -0
- data/assets/platform/include/SDL3/SDL_init.h +507 -0
- data/assets/platform/include/SDL3/SDL_intrin.h +410 -0
- data/assets/platform/include/SDL3/SDL_iostream.h +1379 -0
- data/assets/platform/include/SDL3/SDL_joystick.h +1385 -0
- data/assets/platform/include/SDL3/SDL_keyboard.h +608 -0
- data/assets/platform/include/SDL3/SDL_keycode.h +347 -0
- data/assets/platform/include/SDL3/SDL_loadso.h +145 -0
- data/assets/{include/SDL2 → platform/include/SDL3}/SDL_locale.h +40 -24
- data/assets/platform/include/SDL3/SDL_log.h +541 -0
- data/assets/platform/include/SDL3/SDL_main.h +704 -0
- data/assets/platform/include/SDL3/SDL_main_impl.h +151 -0
- data/assets/{include/SDL2 → platform/include/SDL3}/SDL_messagebox.h +85 -48
- data/assets/{include/SDL2 → platform/include/SDL3}/SDL_metal.h +29 -29
- data/assets/{include/SDL2 → platform/include/SDL3}/SDL_misc.h +13 -12
- data/assets/platform/include/SDL3/SDL_mouse.h +813 -0
- data/assets/platform/include/SDL3/SDL_mutex.h +1117 -0
- data/assets/platform/include/SDL3/SDL_oldnames.h +1339 -0
- data/assets/{include/SDL2 → platform/include/SDL3}/SDL_opengl.h +1247 -278
- data/assets/{include/SDL2 → platform/include/SDL3}/SDL_opengl_glext.h +5 -1
- data/assets/{include/SDL2 → platform/include/SDL3}/SDL_opengles.h +6 -7
- data/assets/{include/SDL2 → platform/include/SDL3}/SDL_opengles2.h +10 -11
- data/assets/platform/include/SDL3/SDL_pen.h +198 -0
- data/assets/platform/include/SDL3/SDL_pixels.h +1441 -0
- data/assets/{include/SDL2/SDL_test_log.h → platform/include/SDL3/SDL_platform.h} +25 -26
- data/assets/platform/include/SDL3/SDL_platform_defines.h +497 -0
- data/assets/{include/SDL2 → platform/include/SDL3}/SDL_power.h +40 -20
- data/assets/platform/include/SDL3/SDL_process.h +441 -0
- data/assets/platform/include/SDL3/SDL_properties.h +572 -0
- data/assets/platform/include/SDL3/SDL_rect.h +528 -0
- data/assets/platform/include/SDL3/SDL_render.h +3028 -0
- data/assets/platform/include/SDL3/SDL_revision.h +59 -0
- data/assets/{include/SDL2 → platform/include/SDL3}/SDL_scancode.h +59 -68
- data/assets/platform/include/SDL3/SDL_sensor.h +321 -0
- data/assets/platform/include/SDL3/SDL_stdinc.h +6186 -0
- data/assets/platform/include/SDL3/SDL_storage.h +686 -0
- data/assets/platform/include/SDL3/SDL_surface.h +1769 -0
- data/assets/platform/include/SDL3/SDL_system.h +840 -0
- data/assets/{include/SDL2 → platform/include/SDL3}/SDL_test.h +16 -22
- data/assets/{include/SDL2 → platform/include/SDL3}/SDL_test_assert.h +27 -34
- data/assets/{include/SDL2 → platform/include/SDL3}/SDL_test_common.h +109 -52
- data/assets/{include/SDL2 → platform/include/SDL3}/SDL_test_compare.h +22 -14
- data/assets/{include/SDL2 → platform/include/SDL3}/SDL_test_crc32.h +27 -30
- data/assets/{include/SDL2 → platform/include/SDL3}/SDL_test_font.h +50 -49
- data/assets/{include/SDL2 → platform/include/SDL3}/SDL_test_fuzzer.h +64 -79
- data/assets/{include/SDL2 → platform/include/SDL3}/SDL_test_harness.h +47 -30
- data/assets/platform/include/SDL3/SDL_test_log.h +83 -0
- data/assets/{include/SDL2 → platform/include/SDL3}/SDL_test_md5.h +21 -28
- data/assets/{include/SDL2 → platform/include/SDL3}/SDL_test_memory.h +19 -16
- data/assets/platform/include/SDL3/SDL_thread.h +602 -0
- data/assets/platform/include/SDL3/SDL_time.h +249 -0
- data/assets/platform/include/SDL3/SDL_timer.h +454 -0
- data/assets/platform/include/SDL3/SDL_touch.h +184 -0
- data/assets/platform/include/SDL3/SDL_tray.h +544 -0
- data/assets/platform/include/SDL3/SDL_version.h +198 -0
- data/assets/platform/include/SDL3/SDL_video.h +3497 -0
- data/assets/platform/include/SDL3/SDL_vulkan.h +287 -0
- data/assets/platform/include/SDL3_image/SDL_image.h +3328 -0
- data/assets/platform/include/SDL3_mixer/SDL_mixer.h +3369 -0
- data/assets/platform/include/SDL3_ttf/SDL_textengine.h +181 -0
- data/assets/platform/include/SDL3_ttf/SDL_ttf.h +2833 -0
- data/assets/{include → platform/include}/mrbconf.h +42 -31
- data/assets/{include → platform/include}/mruby/array.h +3 -4
- data/assets/{include → platform/include}/mruby/boxing_nan.h +10 -0
- data/assets/platform/include/mruby/boxing_no.h +59 -0
- data/assets/{include → platform/include}/mruby/boxing_word.h +72 -26
- data/assets/platform/include/mruby/class.h +157 -0
- data/assets/{include → platform/include}/mruby/common.h +30 -1
- data/assets/{include → platform/include}/mruby/compile.h +52 -74
- data/assets/{include → platform/include}/mruby/data.h +2 -2
- data/assets/{include → platform/include}/mruby/debug.h +12 -5
- data/assets/{include → platform/include}/mruby/dump.h +7 -9
- data/assets/{include → platform/include}/mruby/endian.h +1 -1
- data/assets/platform/include/mruby/error.h +173 -0
- data/assets/platform/include/mruby/gc.h +79 -0
- data/assets/{include → platform/include}/mruby/hash.h +1 -7
- data/assets/platform/include/mruby/internal.h +282 -0
- data/assets/platform/include/mruby/irep.h +143 -0
- data/assets/{include → platform/include}/mruby/istruct.h +1 -1
- data/assets/platform/include/mruby/khash.h +455 -0
- data/assets/platform/include/mruby/mempool.h +19 -0
- data/assets/{include → platform/include}/mruby/numeric.h +7 -10
- data/assets/platform/include/mruby/object.h +51 -0
- data/assets/{include → platform/include}/mruby/opcode.h +5 -5
- data/assets/{include → platform/include}/mruby/ops.h +19 -6
- data/assets/platform/include/mruby/presym/id.h +1447 -0
- data/assets/{include → platform/include}/mruby/presym/scanning.h +10 -7
- data/assets/platform/include/mruby/presym/table.h +2893 -0
- data/assets/platform/include/mruby/presym.h +65 -0
- data/assets/platform/include/mruby/proc.h +184 -0
- data/assets/{include → platform/include}/mruby/range.h +0 -2
- data/assets/{include → platform/include}/mruby/string.h +33 -53
- data/assets/platform/include/mruby/throw.h +81 -0
- data/assets/{include → platform/include}/mruby/value.h +64 -29
- data/assets/{include → platform/include}/mruby/variable.h +6 -23
- data/assets/{include → platform/include}/mruby/version.h +7 -7
- data/assets/{include → platform/include}/mruby.h +238 -116
- data/assets/platform/macos-arm64/bin/mrbc +0 -0
- data/assets/platform/macos-arm64/lib/libSDL3.a +0 -0
- data/assets/platform/macos-arm64/lib/libSDL3_image.a +0 -0
- data/assets/platform/macos-arm64/lib/libSDL3_mixer.a +0 -0
- data/assets/platform/macos-arm64/lib/libSDL3_ttf.a +0 -0
- data/assets/platform/macos-arm64/lib/libmruby.a +0 -0
- data/assets/platform/wasm/lib/libFLAC.a +0 -0
- data/assets/platform/wasm/lib/libSDL3.a +0 -0
- data/assets/platform/wasm/lib/libSDL3_image.a +0 -0
- data/assets/platform/wasm/lib/libSDL3_mixer.a +0 -0
- data/assets/platform/wasm/lib/libSDL3_ttf.a +0 -0
- data/assets/platform/wasm/lib/libfreetype.a +0 -0
- data/assets/platform/wasm/lib/libharfbuzz.a +0 -0
- data/assets/platform/wasm/lib/libmruby.a +0 -0
- data/assets/platform/wasm/lib/libogg.a +0 -0
- data/assets/platform/wasm/lib/libplutosvg.a +0 -0
- data/assets/platform/wasm/lib/libplutovg.a +0 -0
- data/assets/platform/wasm/lib/libpng.a +0 -0
- data/assets/platform/wasm/lib/libpng16.a +0 -0
- data/assets/platform/wasm/lib/libvorbis.a +0 -0
- data/assets/platform/wasm/lib/libvorbisfile.a +0 -0
- data/assets/platform/wasm/lib/libzlibstatic.a +0 -0
- data/assets/platform/windows-arm64-mingw-ucrt/bin/mrbc.exe +0 -0
- data/assets/platform/windows-arm64-mingw-ucrt/lib/libSDL3.a +0 -0
- data/assets/platform/windows-arm64-mingw-ucrt/lib/libSDL3_image.a +0 -0
- data/assets/platform/windows-arm64-mingw-ucrt/lib/libSDL3_mixer.a +0 -0
- data/assets/platform/windows-arm64-mingw-ucrt/lib/libSDL3_ttf.a +0 -0
- data/assets/platform/windows-arm64-mingw-ucrt/lib/libmruby.a +0 -0
- data/assets/platform/windows-x86_64-mingw-ucrt/bin/mrbc.exe +0 -0
- data/assets/platform/windows-x86_64-mingw-ucrt/lib/libSDL3.a +0 -0
- data/assets/platform/windows-x86_64-mingw-ucrt/lib/libSDL3_image.a +0 -0
- data/assets/platform/windows-x86_64-mingw-ucrt/lib/libSDL3_mixer.a +0 -0
- data/assets/platform/windows-x86_64-mingw-ucrt/lib/libSDL3_ttf.a +0 -0
- data/assets/platform/windows-x86_64-mingw-ucrt/lib/libmruby.a +0 -0
- data/assets/resources/fonts/outfit/OFL.txt +93 -0
- data/assets/resources/fonts/outfit/outfit.ttf +0 -0
- data/assets/resources/fonts/roboto_mono/OFL.txt +91 -0
- data/assets/resources/fonts/roboto_mono/roboto_mono.ttf +0 -0
- data/assets/resources/icons/icon.icns +0 -0
- data/assets/resources/icons/icon.png +0 -0
- data/assets/resources/spritesheets/License.txt +28 -0
- data/assets/resources/spritesheets/spritesheet-backgrounds.png +0 -0
- data/assets/resources/spritesheets/spritesheet-backgrounds.xml +16 -0
- data/assets/resources/spritesheets/spritesheet-characters.png +0 -0
- data/assets/resources/spritesheets/spritesheet-characters.xml +47 -0
- data/assets/resources/spritesheets/spritesheet-enemies.png +0 -0
- data/assets/resources/spritesheets/spritesheet-enemies.xml +62 -0
- data/assets/resources/spritesheets/spritesheet-tiles.png +0 -0
- data/assets/resources/spritesheets/spritesheet-tiles.xml +316 -0
- data/assets/{wasm → resources/web}/template.html +1 -1
- data/assets/target.rb +131 -0
- data/bin/ruby2d +281 -82
- data/examples/astar.rb +269 -0
- data/examples/asteroids.rb +403 -0
- data/examples/bezier_editor.rb +96 -0
- data/examples/boids.rb +191 -0
- data/examples/bouncing_balls.rb +119 -0
- data/examples/breakout.rb +186 -0
- data/examples/constellations.rb +100 -0
- data/examples/dashboard.rb +133 -0
- data/examples/double_pendulum.rb +254 -0
- data/examples/falling_sand.rb +291 -0
- data/examples/fireworks.rb +110 -0
- data/examples/fluid_dynamics.rb +340 -0
- data/examples/fourier_epicycles.rb +142 -0
- data/examples/fractal_tree.rb +326 -0
- data/examples/game_of_life.rb +148 -0
- data/examples/gamepads.rb +333 -0
- data/examples/hill_driver.rb +613 -0
- data/examples/logo_animation.rb +251 -0
- data/examples/lorenz_attractor.rb +115 -0
- data/examples/mandelbrot.rb +207 -0
- data/examples/marching_squares.rb +200 -0
- data/examples/maze.rb +323 -0
- data/examples/nbody.rb +338 -0
- data/examples/outrun.rb +391 -0
- data/examples/pixel_paint.rb +313 -0
- data/examples/platformer.rb +335 -0
- data/examples/ray_casting_maze.rb +175 -0
- data/examples/shadow_casting.rb +151 -0
- data/examples/shape_recognizer.rb +908 -0
- data/examples/snake.rb +144 -0
- data/examples/sprite_sheets.rb +246 -0
- data/examples/swarm.rb +206 -0
- data/examples/tsp_annealing.rb +104 -0
- data/examples/ui_controls.rb +163 -0
- data/examples/wireframe_3d.rb +139 -0
- data/ext/ruby2d/audio.c +324 -0
- data/ext/ruby2d/canvas.c +1715 -494
- data/ext/ruby2d/ext.c +541 -0
- data/ext/ruby2d/extconf.rb +122 -145
- data/ext/ruby2d/font.c +566 -20
- data/ext/ruby2d/fps.c +92 -0
- data/ext/ruby2d/image.c +466 -41
- data/ext/ruby2d/ruby2d.c +374 -1890
- data/ext/ruby2d/ruby2d.h +840 -460
- data/ext/ruby2d/shapes.c +931 -101
- data/ext/ruby2d/text.c +586 -21
- data/ext/ruby2d/window.c +1693 -283
- data/lib/ruby2d/atlas_parser.rb +194 -0
- data/lib/ruby2d/audio.rb +73 -0
- data/lib/ruby2d/benchmark.rb +259 -0
- data/lib/ruby2d/bitmap_text.rb +155 -0
- data/lib/ruby2d/button.rb +402 -0
- data/lib/ruby2d/canvas.rb +703 -279
- data/lib/ruby2d/circle.rb +206 -29
- data/lib/ruby2d/cli/browser.rb +314 -0
- data/lib/ruby2d/cli/build.rb +471 -257
- data/lib/ruby2d/cli/colorize.rb +7 -5
- data/lib/ruby2d/cli/examples.rb +127 -0
- data/lib/ruby2d/cli/launch.rb +24 -39
- data/lib/ruby2d/cli/lib_files.rb +48 -0
- data/lib/ruby2d/cli/messages.rb +40 -0
- data/lib/ruby2d/cli/setup.rb +273 -0
- data/lib/ruby2d/cli/static_server.rb +160 -0
- data/lib/ruby2d/cli/usage.rb +255 -0
- data/lib/ruby2d/color.rb +191 -69
- data/lib/ruby2d/core.rb +37 -19
- data/lib/ruby2d/deps_help.rb +89 -0
- data/lib/ruby2d/dsl.rb +51 -12
- data/lib/ruby2d/ellipse.rb +228 -0
- data/lib/ruby2d/exceptions.rb +0 -2
- data/lib/ruby2d/font.rb +34 -74
- data/lib/ruby2d/gamepad.rb +323 -0
- data/lib/ruby2d/gem_paths.rb +19 -0
- data/lib/ruby2d/image.rb +155 -52
- data/lib/ruby2d/interactive.rb +103 -0
- data/lib/ruby2d/json_parser.rb +268 -0
- data/lib/ruby2d/line.rb +194 -85
- data/lib/ruby2d/mruby_compat.rb +12 -0
- data/lib/ruby2d/polygon.rb +297 -0
- data/lib/ruby2d/polyline.rb +368 -0
- data/lib/ruby2d/quad.rb +358 -94
- data/lib/ruby2d/rectangle.rb +77 -19
- data/lib/ruby2d/renderable.rb +411 -11
- data/lib/ruby2d/sprite.rb +471 -180
- data/lib/ruby2d/sprite_sheet.rb +64 -0
- data/lib/ruby2d/square.rb +29 -17
- data/lib/ruby2d/text.rb +196 -65
- data/lib/ruby2d/tileset.rb +139 -81
- data/lib/ruby2d/triangle.rb +324 -89
- data/lib/ruby2d/version.rb +1 -3
- data/lib/ruby2d/vertices.rb +62 -85
- data/lib/ruby2d/warnings.rb +29 -0
- data/lib/ruby2d/window/class_methods.rb +218 -0
- data/lib/ruby2d/window/gamepad_events.rb +141 -0
- data/lib/ruby2d/window/key_events.rb +74 -0
- data/lib/ruby2d/window/mouse_events.rb +171 -0
- data/lib/ruby2d/window/object_events.rb +168 -0
- data/lib/ruby2d/window.rb +632 -585
- data/lib/ruby2d.rb +14 -19
- metadata +275 -443
- data/assets/app.icns +0 -0
- data/assets/include/GL/glew.h +0 -26427
- data/assets/include/GLES2/gl2.h +0 -656
- data/assets/include/GLES2/gl2ext.h +0 -3949
- data/assets/include/GLES2/gl2ext_angle.h +0 -701
- data/assets/include/GLES2/gl2platform.h +0 -27
- data/assets/include/GLES3/gl3.h +0 -1192
- data/assets/include/GLES3/gl31.h +0 -1507
- data/assets/include/GLES3/gl32.h +0 -1808
- data/assets/include/GLES3/gl3platform.h +0 -27
- data/assets/include/KHR/khrplatform.h +0 -290
- data/assets/include/SDL2/SDL.h +0 -233
- data/assets/include/SDL2/SDL_assert.h +0 -326
- data/assets/include/SDL2/SDL_atomic.h +0 -415
- data/assets/include/SDL2/SDL_audio.h +0 -1500
- data/assets/include/SDL2/SDL_clipboard.h +0 -141
- data/assets/include/SDL2/SDL_config.h +0 -61
- data/assets/include/SDL2/SDL_config_android.h +0 -194
- data/assets/include/SDL2/SDL_config_emscripten.h +0 -218
- data/assets/include/SDL2/SDL_config_iphoneos.h +0 -217
- data/assets/include/SDL2/SDL_config_macosx.h +0 -277
- data/assets/include/SDL2/SDL_config_minimal.h +0 -95
- data/assets/include/SDL2/SDL_config_ngage.h +0 -89
- data/assets/include/SDL2/SDL_config_os2.h +0 -207
- data/assets/include/SDL2/SDL_config_pandora.h +0 -141
- data/assets/include/SDL2/SDL_config_windows.h +0 -331
- data/assets/include/SDL2/SDL_config_wingdk.h +0 -253
- data/assets/include/SDL2/SDL_config_winrt.h +0 -220
- data/assets/include/SDL2/SDL_config_xbox.h +0 -235
- data/assets/include/SDL2/SDL_cpuinfo.h +0 -594
- data/assets/include/SDL2/SDL_endian.h +0 -348
- data/assets/include/SDL2/SDL_error.h +0 -163
- data/assets/include/SDL2/SDL_events.h +0 -1166
- data/assets/include/SDL2/SDL_filesystem.h +0 -149
- data/assets/include/SDL2/SDL_gamecontroller.h +0 -1074
- data/assets/include/SDL2/SDL_gesture.h +0 -117
- data/assets/include/SDL2/SDL_guid.h +0 -100
- data/assets/include/SDL2/SDL_haptic.h +0 -1341
- data/assets/include/SDL2/SDL_hidapi.h +0 -451
- data/assets/include/SDL2/SDL_hints.h +0 -2569
- data/assets/include/SDL2/SDL_image.h +0 -2173
- data/assets/include/SDL2/SDL_joystick.h +0 -1066
- data/assets/include/SDL2/SDL_keyboard.h +0 -353
- data/assets/include/SDL2/SDL_keycode.h +0 -358
- data/assets/include/SDL2/SDL_loadso.h +0 -115
- data/assets/include/SDL2/SDL_log.h +0 -404
- data/assets/include/SDL2/SDL_main.h +0 -275
- data/assets/include/SDL2/SDL_mixer.h +0 -2784
- data/assets/include/SDL2/SDL_mouse.h +0 -465
- data/assets/include/SDL2/SDL_mutex.h +0 -471
- data/assets/include/SDL2/SDL_name.h +0 -33
- data/assets/include/SDL2/SDL_pixels.h +0 -644
- data/assets/include/SDL2/SDL_platform.h +0 -261
- data/assets/include/SDL2/SDL_quit.h +0 -58
- data/assets/include/SDL2/SDL_rect.h +0 -376
- data/assets/include/SDL2/SDL_render.h +0 -1919
- data/assets/include/SDL2/SDL_revision.h +0 -6
- data/assets/include/SDL2/SDL_rwops.h +0 -841
- data/assets/include/SDL2/SDL_sensor.h +0 -322
- data/assets/include/SDL2/SDL_shape.h +0 -155
- data/assets/include/SDL2/SDL_stdinc.h +0 -830
- data/assets/include/SDL2/SDL_surface.h +0 -997
- data/assets/include/SDL2/SDL_system.h +0 -623
- data/assets/include/SDL2/SDL_syswm.h +0 -386
- data/assets/include/SDL2/SDL_test_images.h +0 -78
- data/assets/include/SDL2/SDL_test_random.h +0 -115
- data/assets/include/SDL2/SDL_thread.h +0 -464
- data/assets/include/SDL2/SDL_timer.h +0 -222
- data/assets/include/SDL2/SDL_touch.h +0 -150
- data/assets/include/SDL2/SDL_ttf.h +0 -2316
- data/assets/include/SDL2/SDL_types.h +0 -29
- data/assets/include/SDL2/SDL_version.h +0 -204
- data/assets/include/SDL2/SDL_video.h +0 -2150
- data/assets/include/SDL2/SDL_vulkan.h +0 -215
- data/assets/include/SDL2/begin_code.h +0 -187
- data/assets/include/mruby/boxing_no.h +0 -58
- data/assets/include/mruby/class.h +0 -108
- data/assets/include/mruby/error.h +0 -147
- data/assets/include/mruby/gc.h +0 -94
- data/assets/include/mruby/irep.h +0 -147
- data/assets/include/mruby/khash.h +0 -284
- data/assets/include/mruby/object.h +0 -43
- data/assets/include/mruby/presym/disable.h +0 -70
- data/assets/include/mruby/presym/enable.h +0 -37
- data/assets/include/mruby/presym.h +0 -40
- data/assets/include/mruby/proc.h +0 -211
- data/assets/include/mruby/throw.h +0 -66
- data/assets/macos/universal/bin/mrbc +0 -0
- data/assets/macos/universal/lib/libFLAC.a +0 -0
- data/assets/macos/universal/lib/libSDL2.a +0 -0
- data/assets/macos/universal/lib/libSDL2_image.a +0 -0
- data/assets/macos/universal/lib/libSDL2_mixer.a +0 -0
- data/assets/macos/universal/lib/libSDL2_ttf.a +0 -0
- data/assets/macos/universal/lib/libavif.a +0 -0
- data/assets/macos/universal/lib/libbrotlicommon-static.a +0 -0
- data/assets/macos/universal/lib/libbrotlidec-static.a +0 -0
- data/assets/macos/universal/lib/libfreetype.a +0 -0
- data/assets/macos/universal/lib/libgraphite2.a +0 -0
- data/assets/macos/universal/lib/libharfbuzz.a +0 -0
- data/assets/macos/universal/lib/libhwy.a +0 -0
- data/assets/macos/universal/lib/libjpeg.a +0 -0
- data/assets/macos/universal/lib/libjxl.a +0 -0
- data/assets/macos/universal/lib/libmodplug.a +0 -0
- data/assets/macos/universal/lib/libmpg123.a +0 -0
- data/assets/macos/universal/lib/libmruby.a +0 -0
- data/assets/macos/universal/lib/libogg.a +0 -0
- data/assets/macos/universal/lib/libpng.a +0 -0
- data/assets/macos/universal/lib/libtiff.a +0 -0
- data/assets/macos/universal/lib/libvorbis.a +0 -0
- data/assets/macos/universal/lib/libvorbisfile.a +0 -0
- data/assets/macos/universal/lib/libwebp.a +0 -0
- data/assets/macos/universal/lib/libzstd.a +0 -0
- data/assets/test_media/README.md +0 -3
- data/assets/test_media/bitstream_vera/COPYRIGHT.txt +0 -124
- data/assets/test_media/bitstream_vera/vera.ttf +0 -0
- data/assets/test_media/boom.png +0 -0
- data/assets/test_media/coin.png +0 -0
- data/assets/test_media/colors.png +0 -0
- data/assets/test_media/controller.png +0 -0
- data/assets/test_media/dial.wav +0 -0
- data/assets/test_media/hero.png +0 -0
- data/assets/test_media/image.bmp +0 -0
- data/assets/test_media/image.jpg +0 -0
- data/assets/test_media/image.png +0 -0
- data/assets/test_media/music.flac +0 -0
- data/assets/test_media/music.mp3 +0 -0
- data/assets/test_media/music.ogg +0 -0
- data/assets/test_media/music.wav +0 -0
- data/assets/test_media/originals/boom.pxm +0 -0
- data/assets/test_media/originals/coin.pxm +0 -0
- data/assets/test_media/originals/controller.sketch +0 -0
- data/assets/test_media/originals/hero.pxm +0 -0
- data/assets/test_media/originals/image.pxm +0 -0
- data/assets/test_media/originals/music.caf +0 -0
- data/assets/test_media/originals/texture_atlas.pxm +0 -0
- data/assets/test_media/rondo_alla_turka.ogg +0 -0
- data/assets/test_media/sound.flac +0 -0
- data/assets/test_media/sound.mp3 +0 -0
- data/assets/test_media/sound.ogg +0 -0
- data/assets/test_media/sound.wav +0 -0
- data/assets/test_media/sprite_sheet.png +0 -0
- data/assets/test_media/texture_atlas.png +0 -0
- data/assets/wasm/libmruby.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/bin/mrbc.exe +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libFLAC.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libLerc.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libSDL2.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libSDL2_image.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libSDL2_mixer.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libSDL2_ttf.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libbrotlicommon.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libbrotlidec.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libbz2.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libdeflate.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libfreetype.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libglew32.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libgraphite2.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libharfbuzz.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libhwy.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libjbig.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libjpeg.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libjxl.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/liblzma.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libmodplug.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libmpg123.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libmruby.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libogg.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libopus.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libopusfile.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libpng.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libsndfile.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libssp.a +0 -1
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libstdc++.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libtiff.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libvorbis.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libvorbisfile.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libwebp.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libz.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libzstd.a +0 -0
- data/assets/windows/mingw-w64-x86_64/bin/mrbc.exe +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libFLAC.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libLerc.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libSDL2.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libSDL2_image.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libSDL2_mixer.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libSDL2_ttf.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libbrotlicommon.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libbrotlidec.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libbz2.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libdeflate.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libfreetype.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libglew32.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libgraphite2.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libharfbuzz.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libhwy.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libjbig.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libjpeg.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libjxl.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/liblzma.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libmodplug.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libmpg123.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libmruby.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libogg.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libopus.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libopusfile.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libpng.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libsndfile.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libssp.a +0 -1
- data/assets/windows/mingw-w64-x86_64/lib/libstdc++.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libtiff.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libvorbis.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libvorbisfile.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libwebp.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libz.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libzstd.a +0 -0
- data/assets/xcode/ios/Assets.xcassets/AppIcon.appiconset/Contents.json +0 -98
- data/assets/xcode/ios/Assets.xcassets/Contents.json +0 -6
- data/assets/xcode/ios/Base.lproj/LaunchScreen.storyboard +0 -27
- data/assets/xcode/ios/Info.plist +0 -43
- data/assets/xcode/ios/MRuby.framework/Headers/mrbconf.h +0 -143
- data/assets/xcode/ios/MRuby.framework/Headers/mruby/array.h +0 -280
- data/assets/xcode/ios/MRuby.framework/Headers/mruby/boxing_nan.h +0 -102
- data/assets/xcode/ios/MRuby.framework/Headers/mruby/boxing_no.h +0 -56
- data/assets/xcode/ios/MRuby.framework/Headers/mruby/boxing_word.h +0 -144
- data/assets/xcode/ios/MRuby.framework/Headers/mruby/class.h +0 -97
- data/assets/xcode/ios/MRuby.framework/Headers/mruby/common.h +0 -77
- data/assets/xcode/ios/MRuby.framework/Headers/mruby/compile.h +0 -195
- data/assets/xcode/ios/MRuby.framework/Headers/mruby/data.h +0 -75
- data/assets/xcode/ios/MRuby.framework/Headers/mruby/debug.h +0 -67
- data/assets/xcode/ios/MRuby.framework/Headers/mruby/dump.h +0 -196
- data/assets/xcode/ios/MRuby.framework/Headers/mruby/error.h +0 -75
- data/assets/xcode/ios/MRuby.framework/Headers/mruby/gc.h +0 -91
- data/assets/xcode/ios/MRuby.framework/Headers/mruby/hash.h +0 -215
- data/assets/xcode/ios/MRuby.framework/Headers/mruby/irep.h +0 -75
- data/assets/xcode/ios/MRuby.framework/Headers/mruby/istruct.h +0 -47
- data/assets/xcode/ios/MRuby.framework/Headers/mruby/khash.h +0 -274
- data/assets/xcode/ios/MRuby.framework/Headers/mruby/numeric.h +0 -161
- data/assets/xcode/ios/MRuby.framework/Headers/mruby/object.h +0 -44
- data/assets/xcode/ios/MRuby.framework/Headers/mruby/opcode.h +0 -69
- data/assets/xcode/ios/MRuby.framework/Headers/mruby/ops.h +0 -117
- data/assets/xcode/ios/MRuby.framework/Headers/mruby/proc.h +0 -131
- data/assets/xcode/ios/MRuby.framework/Headers/mruby/range.h +0 -49
- data/assets/xcode/ios/MRuby.framework/Headers/mruby/re.h +0 -16
- data/assets/xcode/ios/MRuby.framework/Headers/mruby/string.h +0 -444
- data/assets/xcode/ios/MRuby.framework/Headers/mruby/throw.h +0 -55
- data/assets/xcode/ios/MRuby.framework/Headers/mruby/value.h +0 -309
- data/assets/xcode/ios/MRuby.framework/Headers/mruby/variable.h +0 -136
- data/assets/xcode/ios/MRuby.framework/Headers/mruby/version.h +0 -110
- data/assets/xcode/ios/MRuby.framework/Headers/mruby.h +0 -1282
- data/assets/xcode/ios/MRuby.framework/Info.plist +0 -20
- data/assets/xcode/ios/MRuby.framework/MRuby +0 -0
- data/assets/xcode/ios/MyApp.xcodeproj/project.pbxproj +0 -368
- data/assets/xcode/ios/MyApp.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
- data/assets/xcode/ios/MyApp.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
- data/assets/xcode/ios/MyApp.xcodeproj/project.xcworkspace/xcshareddata/MyApp.xcscmblueprint +0 -30
- data/assets/xcode/ios/main.c +0 -1
- data/assets/xcode/tvos/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Large.imagestack/Back.imagestacklayer/Content.imageset/Contents.json +0 -16
- data/assets/xcode/tvos/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Large.imagestack/Back.imagestacklayer/Contents.json +0 -6
- data/assets/xcode/tvos/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Large.imagestack/Contents.json +0 -17
- data/assets/xcode/tvos/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Large.imagestack/Front.imagestacklayer/Content.imageset/Contents.json +0 -16
- data/assets/xcode/tvos/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Large.imagestack/Front.imagestacklayer/Contents.json +0 -6
- data/assets/xcode/tvos/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Large.imagestack/Middle.imagestacklayer/Content.imageset/Contents.json +0 -16
- data/assets/xcode/tvos/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Large.imagestack/Middle.imagestacklayer/Contents.json +0 -6
- data/assets/xcode/tvos/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Small.imagestack/Back.imagestacklayer/Content.imageset/Contents.json +0 -16
- data/assets/xcode/tvos/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Small.imagestack/Back.imagestacklayer/Contents.json +0 -6
- data/assets/xcode/tvos/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Small.imagestack/Contents.json +0 -17
- data/assets/xcode/tvos/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Small.imagestack/Front.imagestacklayer/Content.imageset/Contents.json +0 -16
- data/assets/xcode/tvos/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Small.imagestack/Front.imagestacklayer/Contents.json +0 -6
- data/assets/xcode/tvos/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Small.imagestack/Middle.imagestacklayer/Content.imageset/Contents.json +0 -16
- data/assets/xcode/tvos/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Small.imagestack/Middle.imagestacklayer/Contents.json +0 -6
- data/assets/xcode/tvos/Assets.xcassets/App Icon & Top Shelf Image.brandassets/Contents.json +0 -32
- data/assets/xcode/tvos/Assets.xcassets/App Icon & Top Shelf Image.brandassets/Top Shelf Image Wide.imageset/Contents.json +0 -16
- data/assets/xcode/tvos/Assets.xcassets/App Icon & Top Shelf Image.brandassets/Top Shelf Image.imageset/Contents.json +0 -16
- data/assets/xcode/tvos/Assets.xcassets/Contents.json +0 -6
- data/assets/xcode/tvos/Assets.xcassets/LaunchImage.launchimage/Contents.json +0 -22
- data/assets/xcode/tvos/Info.plist +0 -30
- data/assets/xcode/tvos/MRuby.framework/Headers/mrbconf.h +0 -143
- data/assets/xcode/tvos/MRuby.framework/Headers/mruby/array.h +0 -280
- data/assets/xcode/tvos/MRuby.framework/Headers/mruby/boxing_nan.h +0 -102
- data/assets/xcode/tvos/MRuby.framework/Headers/mruby/boxing_no.h +0 -56
- data/assets/xcode/tvos/MRuby.framework/Headers/mruby/boxing_word.h +0 -144
- data/assets/xcode/tvos/MRuby.framework/Headers/mruby/class.h +0 -97
- data/assets/xcode/tvos/MRuby.framework/Headers/mruby/common.h +0 -77
- data/assets/xcode/tvos/MRuby.framework/Headers/mruby/compile.h +0 -195
- data/assets/xcode/tvos/MRuby.framework/Headers/mruby/data.h +0 -75
- data/assets/xcode/tvos/MRuby.framework/Headers/mruby/debug.h +0 -67
- data/assets/xcode/tvos/MRuby.framework/Headers/mruby/dump.h +0 -196
- data/assets/xcode/tvos/MRuby.framework/Headers/mruby/error.h +0 -75
- data/assets/xcode/tvos/MRuby.framework/Headers/mruby/gc.h +0 -91
- data/assets/xcode/tvos/MRuby.framework/Headers/mruby/hash.h +0 -215
- data/assets/xcode/tvos/MRuby.framework/Headers/mruby/irep.h +0 -75
- data/assets/xcode/tvos/MRuby.framework/Headers/mruby/istruct.h +0 -47
- data/assets/xcode/tvos/MRuby.framework/Headers/mruby/khash.h +0 -274
- data/assets/xcode/tvos/MRuby.framework/Headers/mruby/numeric.h +0 -161
- data/assets/xcode/tvos/MRuby.framework/Headers/mruby/object.h +0 -44
- data/assets/xcode/tvos/MRuby.framework/Headers/mruby/opcode.h +0 -69
- data/assets/xcode/tvos/MRuby.framework/Headers/mruby/ops.h +0 -117
- data/assets/xcode/tvos/MRuby.framework/Headers/mruby/proc.h +0 -131
- data/assets/xcode/tvos/MRuby.framework/Headers/mruby/range.h +0 -49
- data/assets/xcode/tvos/MRuby.framework/Headers/mruby/re.h +0 -16
- data/assets/xcode/tvos/MRuby.framework/Headers/mruby/string.h +0 -444
- data/assets/xcode/tvos/MRuby.framework/Headers/mruby/throw.h +0 -55
- data/assets/xcode/tvos/MRuby.framework/Headers/mruby/value.h +0 -309
- data/assets/xcode/tvos/MRuby.framework/Headers/mruby/variable.h +0 -136
- data/assets/xcode/tvos/MRuby.framework/Headers/mruby/version.h +0 -110
- data/assets/xcode/tvos/MRuby.framework/Headers/mruby.h +0 -1282
- data/assets/xcode/tvos/MRuby.framework/Info.plist +0 -20
- data/assets/xcode/tvos/MRuby.framework/MRuby +0 -0
- data/assets/xcode/tvos/MyApp.xcodeproj/project.pbxproj +0 -350
- data/assets/xcode/tvos/MyApp.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
- data/assets/xcode/tvos/MyApp.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
- data/assets/xcode/tvos/MyApp.xcodeproj/project.xcworkspace/xcshareddata/MyApp.xcscmblueprint +0 -30
- data/assets/xcode/tvos/main.c +0 -1
- data/ext/ruby2d/common.c +0 -185
- data/ext/ruby2d/controllers.c +0 -110
- data/ext/ruby2d/gl.c +0 -398
- data/ext/ruby2d/gl2.c +0 -86
- data/ext/ruby2d/gl3.c +0 -304
- data/ext/ruby2d/gles.c +0 -302
- data/ext/ruby2d/input.c +0 -48
- data/ext/ruby2d/music.c +0 -127
- data/ext/ruby2d/sound.c +0 -132
- data/lib/ruby2d/cli/console.rb +0 -65
- data/lib/ruby2d/cli/enable_console.rb +0 -7
- data/lib/ruby2d/cli/platform.rb +0 -17
- data/lib/ruby2d/music.rb +0 -77
- data/lib/ruby2d/pixel.rb +0 -18
- data/lib/ruby2d/pixmap.rb +0 -39
- data/lib/ruby2d/pixmap_atlas.rb +0 -56
- data/lib/ruby2d/sound.rb +0 -61
- data/lib/ruby2d/texture.rb +0 -38
- /data/assets/{include/SDL2 → platform/include/SDL3}/SDL_opengles2_gl2.h +0 -0
- /data/assets/{include/SDL2 → platform/include/SDL3}/SDL_opengles2_gl2ext.h +0 -0
- /data/assets/{include/SDL2 → platform/include/SDL3}/SDL_opengles2_gl2platform.h +0 -0
- /data/assets/{include/SDL2 → platform/include/SDL3}/SDL_opengles2_khrplatform.h +0 -0
- /data/assets/{include → platform/include}/mruby/re.h +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
2
|
Simple DirectMedia Layer
|
|
3
|
-
Copyright (C) 1997-
|
|
3
|
+
Copyright (C) 1997-2026 Sam Lantinga <slouken@libsdl.org>
|
|
4
4
|
|
|
5
5
|
This software is provided 'as-is', without any express or implied
|
|
6
6
|
warranty. In no event will the authors be held liable for any damages
|
|
@@ -20,11 +20,9 @@
|
|
|
20
20
|
*/
|
|
21
21
|
|
|
22
22
|
/**
|
|
23
|
-
*
|
|
23
|
+
* Fuzzer functions of SDL test framework.
|
|
24
24
|
*
|
|
25
|
-
*
|
|
26
|
-
*
|
|
27
|
-
* This code is a part of the SDL2_test library, not the main SDL library.
|
|
25
|
+
* This code is a part of the SDL test library, not the main SDL library.
|
|
28
26
|
*/
|
|
29
27
|
|
|
30
28
|
/*
|
|
@@ -36,20 +34,19 @@
|
|
|
36
34
|
#ifndef SDL_test_fuzzer_h_
|
|
37
35
|
#define SDL_test_fuzzer_h_
|
|
38
36
|
|
|
39
|
-
#include
|
|
37
|
+
#include <SDL3/SDL_stdinc.h>
|
|
38
|
+
|
|
39
|
+
#include <SDL3/SDL_begin_code.h>
|
|
40
40
|
/* Set up for C function definitions, even when using C++ */
|
|
41
41
|
#ifdef __cplusplus
|
|
42
42
|
extern "C" {
|
|
43
43
|
#endif
|
|
44
44
|
|
|
45
|
-
|
|
46
45
|
/*
|
|
47
46
|
Based on GSOC code by Markus Kauppila <markus.kauppila@gmail.com>
|
|
48
47
|
*/
|
|
49
48
|
|
|
50
|
-
|
|
51
49
|
/**
|
|
52
|
-
* \file
|
|
53
50
|
* Note: The fuzzer implementation uses a static instance of random context
|
|
54
51
|
* internally which makes it thread-UNsafe.
|
|
55
52
|
*/
|
|
@@ -60,53 +57,49 @@ extern "C" {
|
|
|
60
57
|
* \param execKey Execution "Key" that initializes the random number generator uniquely for the test.
|
|
61
58
|
*
|
|
62
59
|
*/
|
|
63
|
-
void SDLTest_FuzzerInit(Uint64 execKey);
|
|
64
|
-
|
|
60
|
+
void SDLCALL SDLTest_FuzzerInit(Uint64 execKey);
|
|
65
61
|
|
|
66
62
|
/**
|
|
67
63
|
* Returns a random Uint8
|
|
68
64
|
*
|
|
69
65
|
* \returns a generated integer
|
|
70
66
|
*/
|
|
71
|
-
Uint8 SDLTest_RandomUint8(void);
|
|
67
|
+
Uint8 SDLCALL SDLTest_RandomUint8(void);
|
|
72
68
|
|
|
73
69
|
/**
|
|
74
70
|
* Returns a random Sint8
|
|
75
71
|
*
|
|
76
72
|
* \returns a generated signed integer
|
|
77
73
|
*/
|
|
78
|
-
Sint8 SDLTest_RandomSint8(void);
|
|
79
|
-
|
|
74
|
+
Sint8 SDLCALL SDLTest_RandomSint8(void);
|
|
80
75
|
|
|
81
76
|
/**
|
|
82
77
|
* Returns a random Uint16
|
|
83
78
|
*
|
|
84
79
|
* \returns a generated integer
|
|
85
80
|
*/
|
|
86
|
-
Uint16 SDLTest_RandomUint16(void);
|
|
81
|
+
Uint16 SDLCALL SDLTest_RandomUint16(void);
|
|
87
82
|
|
|
88
83
|
/**
|
|
89
84
|
* Returns a random Sint16
|
|
90
85
|
*
|
|
91
86
|
* \returns a generated signed integer
|
|
92
87
|
*/
|
|
93
|
-
Sint16 SDLTest_RandomSint16(void);
|
|
94
|
-
|
|
88
|
+
Sint16 SDLCALL SDLTest_RandomSint16(void);
|
|
95
89
|
|
|
96
90
|
/**
|
|
97
91
|
* Returns a random integer
|
|
98
92
|
*
|
|
99
93
|
* \returns a generated integer
|
|
100
94
|
*/
|
|
101
|
-
Sint32 SDLTest_RandomSint32(void);
|
|
102
|
-
|
|
95
|
+
Sint32 SDLCALL SDLTest_RandomSint32(void);
|
|
103
96
|
|
|
104
97
|
/**
|
|
105
98
|
* Returns a random positive integer
|
|
106
99
|
*
|
|
107
100
|
* \returns a generated integer
|
|
108
101
|
*/
|
|
109
|
-
Uint32 SDLTest_RandomUint32(void);
|
|
102
|
+
Uint32 SDLCALL SDLTest_RandomUint32(void);
|
|
110
103
|
|
|
111
104
|
/**
|
|
112
105
|
* Returns random Uint64.
|
|
@@ -115,35 +108,34 @@ Uint32 SDLTest_RandomUint32(void);
|
|
|
115
108
|
*/
|
|
116
109
|
Uint64 SDLTest_RandomUint64(void);
|
|
117
110
|
|
|
118
|
-
|
|
119
111
|
/**
|
|
120
112
|
* Returns random Sint64.
|
|
121
113
|
*
|
|
122
114
|
* \returns a generated signed integer
|
|
123
115
|
*/
|
|
124
|
-
Sint64 SDLTest_RandomSint64(void);
|
|
116
|
+
Sint64 SDLCALL SDLTest_RandomSint64(void);
|
|
125
117
|
|
|
126
118
|
/**
|
|
127
119
|
* \returns a random float in range [0.0 - 1.0]
|
|
128
120
|
*/
|
|
129
|
-
float SDLTest_RandomUnitFloat(void);
|
|
121
|
+
float SDLCALL SDLTest_RandomUnitFloat(void);
|
|
130
122
|
|
|
131
123
|
/**
|
|
132
124
|
* \returns a random double in range [0.0 - 1.0]
|
|
133
125
|
*/
|
|
134
|
-
double SDLTest_RandomUnitDouble(void);
|
|
126
|
+
double SDLCALL SDLTest_RandomUnitDouble(void);
|
|
135
127
|
|
|
136
128
|
/**
|
|
137
129
|
* \returns a random float.
|
|
138
130
|
*
|
|
139
131
|
*/
|
|
140
|
-
float SDLTest_RandomFloat(void);
|
|
132
|
+
float SDLCALL SDLTest_RandomFloat(void);
|
|
141
133
|
|
|
142
134
|
/**
|
|
143
135
|
* \returns a random double.
|
|
144
136
|
*
|
|
145
137
|
*/
|
|
146
|
-
double SDLTest_RandomDouble(void);
|
|
138
|
+
double SDLCALL SDLTest_RandomDouble(void);
|
|
147
139
|
|
|
148
140
|
/**
|
|
149
141
|
* Returns a random boundary value for Uint8 within the given boundaries.
|
|
@@ -153,10 +145,10 @@ double SDLTest_RandomDouble(void);
|
|
|
153
145
|
* If boundary1 > boundary2, the values are swapped
|
|
154
146
|
*
|
|
155
147
|
* Usage examples:
|
|
156
|
-
* RandomUint8BoundaryValue(10, 20,
|
|
157
|
-
* RandomUint8BoundaryValue(1, 20,
|
|
158
|
-
* RandomUint8BoundaryValue(0, 99,
|
|
159
|
-
* RandomUint8BoundaryValue(0, 255,
|
|
148
|
+
* RandomUint8BoundaryValue(10, 20, true) returns 10, 11, 19 or 20
|
|
149
|
+
* RandomUint8BoundaryValue(1, 20, false) returns 0 or 21
|
|
150
|
+
* RandomUint8BoundaryValue(0, 99, false) returns 100
|
|
151
|
+
* RandomUint8BoundaryValue(0, 255, false) returns 0 (error set)
|
|
160
152
|
*
|
|
161
153
|
* \param boundary1 Lower boundary limit
|
|
162
154
|
* \param boundary2 Upper boundary limit
|
|
@@ -164,7 +156,7 @@ double SDLTest_RandomDouble(void);
|
|
|
164
156
|
*
|
|
165
157
|
* \returns a random boundary value for the given range and domain or 0 with error set
|
|
166
158
|
*/
|
|
167
|
-
Uint8 SDLTest_RandomUint8BoundaryValue(Uint8 boundary1, Uint8 boundary2,
|
|
159
|
+
Uint8 SDLCALL SDLTest_RandomUint8BoundaryValue(Uint8 boundary1, Uint8 boundary2, bool validDomain);
|
|
168
160
|
|
|
169
161
|
/**
|
|
170
162
|
* Returns a random boundary value for Uint16 within the given boundaries.
|
|
@@ -174,10 +166,10 @@ Uint8 SDLTest_RandomUint8BoundaryValue(Uint8 boundary1, Uint8 boundary2, SDL_boo
|
|
|
174
166
|
* If boundary1 > boundary2, the values are swapped
|
|
175
167
|
*
|
|
176
168
|
* Usage examples:
|
|
177
|
-
* RandomUint16BoundaryValue(10, 20,
|
|
178
|
-
* RandomUint16BoundaryValue(1, 20,
|
|
179
|
-
* RandomUint16BoundaryValue(0, 99,
|
|
180
|
-
* RandomUint16BoundaryValue(0, 0xFFFF,
|
|
169
|
+
* RandomUint16BoundaryValue(10, 20, true) returns 10, 11, 19 or 20
|
|
170
|
+
* RandomUint16BoundaryValue(1, 20, false) returns 0 or 21
|
|
171
|
+
* RandomUint16BoundaryValue(0, 99, false) returns 100
|
|
172
|
+
* RandomUint16BoundaryValue(0, 0xFFFF, false) returns 0 (error set)
|
|
181
173
|
*
|
|
182
174
|
* \param boundary1 Lower boundary limit
|
|
183
175
|
* \param boundary2 Upper boundary limit
|
|
@@ -185,7 +177,7 @@ Uint8 SDLTest_RandomUint8BoundaryValue(Uint8 boundary1, Uint8 boundary2, SDL_boo
|
|
|
185
177
|
*
|
|
186
178
|
* \returns a random boundary value for the given range and domain or 0 with error set
|
|
187
179
|
*/
|
|
188
|
-
Uint16 SDLTest_RandomUint16BoundaryValue(Uint16 boundary1, Uint16 boundary2,
|
|
180
|
+
Uint16 SDLCALL SDLTest_RandomUint16BoundaryValue(Uint16 boundary1, Uint16 boundary2, bool validDomain);
|
|
189
181
|
|
|
190
182
|
/**
|
|
191
183
|
* Returns a random boundary value for Uint32 within the given boundaries.
|
|
@@ -195,10 +187,10 @@ Uint16 SDLTest_RandomUint16BoundaryValue(Uint16 boundary1, Uint16 boundary2, SDL
|
|
|
195
187
|
* If boundary1 > boundary2, the values are swapped
|
|
196
188
|
*
|
|
197
189
|
* Usage examples:
|
|
198
|
-
* RandomUint32BoundaryValue(10, 20,
|
|
199
|
-
* RandomUint32BoundaryValue(1, 20,
|
|
200
|
-
* RandomUint32BoundaryValue(0, 99,
|
|
201
|
-
* RandomUint32BoundaryValue(0, 0xFFFFFFFF,
|
|
190
|
+
* RandomUint32BoundaryValue(10, 20, true) returns 10, 11, 19 or 20
|
|
191
|
+
* RandomUint32BoundaryValue(1, 20, false) returns 0 or 21
|
|
192
|
+
* RandomUint32BoundaryValue(0, 99, false) returns 100
|
|
193
|
+
* RandomUint32BoundaryValue(0, 0xFFFFFFFF, false) returns 0 (with error set)
|
|
202
194
|
*
|
|
203
195
|
* \param boundary1 Lower boundary limit
|
|
204
196
|
* \param boundary2 Upper boundary limit
|
|
@@ -206,7 +198,7 @@ Uint16 SDLTest_RandomUint16BoundaryValue(Uint16 boundary1, Uint16 boundary2, SDL
|
|
|
206
198
|
*
|
|
207
199
|
* \returns a random boundary value for the given range and domain or 0 with error set
|
|
208
200
|
*/
|
|
209
|
-
Uint32 SDLTest_RandomUint32BoundaryValue(Uint32 boundary1, Uint32 boundary2,
|
|
201
|
+
Uint32 SDLCALL SDLTest_RandomUint32BoundaryValue(Uint32 boundary1, Uint32 boundary2, bool validDomain);
|
|
210
202
|
|
|
211
203
|
/**
|
|
212
204
|
* Returns a random boundary value for Uint64 within the given boundaries.
|
|
@@ -216,10 +208,10 @@ Uint32 SDLTest_RandomUint32BoundaryValue(Uint32 boundary1, Uint32 boundary2, SDL
|
|
|
216
208
|
* If boundary1 > boundary2, the values are swapped
|
|
217
209
|
*
|
|
218
210
|
* Usage examples:
|
|
219
|
-
* RandomUint64BoundaryValue(10, 20,
|
|
220
|
-
* RandomUint64BoundaryValue(1, 20,
|
|
221
|
-
* RandomUint64BoundaryValue(0, 99,
|
|
222
|
-
* RandomUint64BoundaryValue(0, 0xFFFFFFFFFFFFFFFF,
|
|
211
|
+
* RandomUint64BoundaryValue(10, 20, true) returns 10, 11, 19 or 20
|
|
212
|
+
* RandomUint64BoundaryValue(1, 20, false) returns 0 or 21
|
|
213
|
+
* RandomUint64BoundaryValue(0, 99, false) returns 100
|
|
214
|
+
* RandomUint64BoundaryValue(0, 0xFFFFFFFFFFFFFFFF, false) returns 0 (with error set)
|
|
223
215
|
*
|
|
224
216
|
* \param boundary1 Lower boundary limit
|
|
225
217
|
* \param boundary2 Upper boundary limit
|
|
@@ -227,7 +219,7 @@ Uint32 SDLTest_RandomUint32BoundaryValue(Uint32 boundary1, Uint32 boundary2, SDL
|
|
|
227
219
|
*
|
|
228
220
|
* \returns a random boundary value for the given range and domain or 0 with error set
|
|
229
221
|
*/
|
|
230
|
-
Uint64 SDLTest_RandomUint64BoundaryValue(Uint64 boundary1, Uint64 boundary2,
|
|
222
|
+
Uint64 SDLCALL SDLTest_RandomUint64BoundaryValue(Uint64 boundary1, Uint64 boundary2, bool validDomain);
|
|
231
223
|
|
|
232
224
|
/**
|
|
233
225
|
* Returns a random boundary value for Sint8 within the given boundaries.
|
|
@@ -237,10 +229,10 @@ Uint64 SDLTest_RandomUint64BoundaryValue(Uint64 boundary1, Uint64 boundary2, SDL
|
|
|
237
229
|
* If boundary1 > boundary2, the values are swapped
|
|
238
230
|
*
|
|
239
231
|
* Usage examples:
|
|
240
|
-
* RandomSint8BoundaryValue(-10, 20,
|
|
241
|
-
* RandomSint8BoundaryValue(-100, -10,
|
|
242
|
-
* RandomSint8BoundaryValue(SINT8_MIN, 99,
|
|
243
|
-
* RandomSint8BoundaryValue(SINT8_MIN, SINT8_MAX,
|
|
232
|
+
* RandomSint8BoundaryValue(-10, 20, true) returns -11, -10, 19 or 20
|
|
233
|
+
* RandomSint8BoundaryValue(-100, -10, false) returns -101 or -9
|
|
234
|
+
* RandomSint8BoundaryValue(SINT8_MIN, 99, false) returns 100
|
|
235
|
+
* RandomSint8BoundaryValue(SINT8_MIN, SINT8_MAX, false) returns SINT8_MIN (== error value) with error set
|
|
244
236
|
*
|
|
245
237
|
* \param boundary1 Lower boundary limit
|
|
246
238
|
* \param boundary2 Upper boundary limit
|
|
@@ -248,8 +240,7 @@ Uint64 SDLTest_RandomUint64BoundaryValue(Uint64 boundary1, Uint64 boundary2, SDL
|
|
|
248
240
|
*
|
|
249
241
|
* \returns a random boundary value for the given range and domain or SINT8_MIN with error set
|
|
250
242
|
*/
|
|
251
|
-
Sint8 SDLTest_RandomSint8BoundaryValue(Sint8 boundary1, Sint8 boundary2,
|
|
252
|
-
|
|
243
|
+
Sint8 SDLCALL SDLTest_RandomSint8BoundaryValue(Sint8 boundary1, Sint8 boundary2, bool validDomain);
|
|
253
244
|
|
|
254
245
|
/**
|
|
255
246
|
* Returns a random boundary value for Sint16 within the given boundaries.
|
|
@@ -259,10 +250,10 @@ Sint8 SDLTest_RandomSint8BoundaryValue(Sint8 boundary1, Sint8 boundary2, SDL_boo
|
|
|
259
250
|
* If boundary1 > boundary2, the values are swapped
|
|
260
251
|
*
|
|
261
252
|
* Usage examples:
|
|
262
|
-
* RandomSint16BoundaryValue(-10, 20,
|
|
263
|
-
* RandomSint16BoundaryValue(-100, -10,
|
|
264
|
-
* RandomSint16BoundaryValue(SINT16_MIN, 99,
|
|
265
|
-
* RandomSint16BoundaryValue(SINT16_MIN, SINT16_MAX,
|
|
253
|
+
* RandomSint16BoundaryValue(-10, 20, true) returns -11, -10, 19 or 20
|
|
254
|
+
* RandomSint16BoundaryValue(-100, -10, false) returns -101 or -9
|
|
255
|
+
* RandomSint16BoundaryValue(SINT16_MIN, 99, false) returns 100
|
|
256
|
+
* RandomSint16BoundaryValue(SINT16_MIN, SINT16_MAX, false) returns SINT16_MIN (== error value) with error set
|
|
266
257
|
*
|
|
267
258
|
* \param boundary1 Lower boundary limit
|
|
268
259
|
* \param boundary2 Upper boundary limit
|
|
@@ -270,7 +261,7 @@ Sint8 SDLTest_RandomSint8BoundaryValue(Sint8 boundary1, Sint8 boundary2, SDL_boo
|
|
|
270
261
|
*
|
|
271
262
|
* \returns a random boundary value for the given range and domain or SINT16_MIN with error set
|
|
272
263
|
*/
|
|
273
|
-
Sint16 SDLTest_RandomSint16BoundaryValue(Sint16 boundary1, Sint16 boundary2,
|
|
264
|
+
Sint16 SDLCALL SDLTest_RandomSint16BoundaryValue(Sint16 boundary1, Sint16 boundary2, bool validDomain);
|
|
274
265
|
|
|
275
266
|
/**
|
|
276
267
|
* Returns a random boundary value for Sint32 within the given boundaries.
|
|
@@ -280,10 +271,10 @@ Sint16 SDLTest_RandomSint16BoundaryValue(Sint16 boundary1, Sint16 boundary2, SDL
|
|
|
280
271
|
* If boundary1 > boundary2, the values are swapped
|
|
281
272
|
*
|
|
282
273
|
* Usage examples:
|
|
283
|
-
* RandomSint32BoundaryValue(-10, 20,
|
|
284
|
-
* RandomSint32BoundaryValue(-100, -10,
|
|
285
|
-
* RandomSint32BoundaryValue(SINT32_MIN, 99,
|
|
286
|
-
* RandomSint32BoundaryValue(SINT32_MIN, SINT32_MAX,
|
|
274
|
+
* RandomSint32BoundaryValue(-10, 20, true) returns -11, -10, 19 or 20
|
|
275
|
+
* RandomSint32BoundaryValue(-100, -10, false) returns -101 or -9
|
|
276
|
+
* RandomSint32BoundaryValue(SINT32_MIN, 99, false) returns 100
|
|
277
|
+
* RandomSint32BoundaryValue(SINT32_MIN, SINT32_MAX, false) returns SINT32_MIN (== error value)
|
|
287
278
|
*
|
|
288
279
|
* \param boundary1 Lower boundary limit
|
|
289
280
|
* \param boundary2 Upper boundary limit
|
|
@@ -291,7 +282,7 @@ Sint16 SDLTest_RandomSint16BoundaryValue(Sint16 boundary1, Sint16 boundary2, SDL
|
|
|
291
282
|
*
|
|
292
283
|
* \returns a random boundary value for the given range and domain or SINT32_MIN with error set
|
|
293
284
|
*/
|
|
294
|
-
Sint32 SDLTest_RandomSint32BoundaryValue(Sint32 boundary1, Sint32 boundary2,
|
|
285
|
+
Sint32 SDLCALL SDLTest_RandomSint32BoundaryValue(Sint32 boundary1, Sint32 boundary2, bool validDomain);
|
|
295
286
|
|
|
296
287
|
/**
|
|
297
288
|
* Returns a random boundary value for Sint64 within the given boundaries.
|
|
@@ -301,10 +292,10 @@ Sint32 SDLTest_RandomSint32BoundaryValue(Sint32 boundary1, Sint32 boundary2, SDL
|
|
|
301
292
|
* If boundary1 > boundary2, the values are swapped
|
|
302
293
|
*
|
|
303
294
|
* Usage examples:
|
|
304
|
-
* RandomSint64BoundaryValue(-10, 20,
|
|
305
|
-
* RandomSint64BoundaryValue(-100, -10,
|
|
306
|
-
* RandomSint64BoundaryValue(SINT64_MIN, 99,
|
|
307
|
-
* RandomSint64BoundaryValue(SINT64_MIN, SINT64_MAX,
|
|
295
|
+
* RandomSint64BoundaryValue(-10, 20, true) returns -11, -10, 19 or 20
|
|
296
|
+
* RandomSint64BoundaryValue(-100, -10, false) returns -101 or -9
|
|
297
|
+
* RandomSint64BoundaryValue(SINT64_MIN, 99, false) returns 100
|
|
298
|
+
* RandomSint64BoundaryValue(SINT64_MIN, SINT64_MAX, false) returns SINT64_MIN (== error value) and error set
|
|
308
299
|
*
|
|
309
300
|
* \param boundary1 Lower boundary limit
|
|
310
301
|
* \param boundary2 Upper boundary limit
|
|
@@ -312,8 +303,7 @@ Sint32 SDLTest_RandomSint32BoundaryValue(Sint32 boundary1, Sint32 boundary2, SDL
|
|
|
312
303
|
*
|
|
313
304
|
* \returns a random boundary value for the given range and domain or SINT64_MIN with error set
|
|
314
305
|
*/
|
|
315
|
-
Sint64 SDLTest_RandomSint64BoundaryValue(Sint64 boundary1, Sint64 boundary2,
|
|
316
|
-
|
|
306
|
+
Sint64 SDLCALL SDLTest_RandomSint64BoundaryValue(Sint64 boundary1, Sint64 boundary2, bool validDomain);
|
|
317
307
|
|
|
318
308
|
/**
|
|
319
309
|
* Returns integer in range [min, max] (inclusive).
|
|
@@ -326,8 +316,7 @@ Sint64 SDLTest_RandomSint64BoundaryValue(Sint64 boundary1, Sint64 boundary2, SDL
|
|
|
326
316
|
*
|
|
327
317
|
* \returns a generated random integer in range
|
|
328
318
|
*/
|
|
329
|
-
Sint32 SDLTest_RandomIntegerInRange(Sint32 min, Sint32 max);
|
|
330
|
-
|
|
319
|
+
Sint32 SDLCALL SDLTest_RandomIntegerInRange(Sint32 min, Sint32 max);
|
|
331
320
|
|
|
332
321
|
/**
|
|
333
322
|
* Generates random null-terminated string. The minimum length for
|
|
@@ -338,8 +327,7 @@ Sint32 SDLTest_RandomIntegerInRange(Sint32 min, Sint32 max);
|
|
|
338
327
|
*
|
|
339
328
|
* \returns a newly allocated random string; or NULL if length was invalid or string could not be allocated.
|
|
340
329
|
*/
|
|
341
|
-
char * SDLTest_RandomAsciiString(void);
|
|
342
|
-
|
|
330
|
+
char * SDLCALL SDLTest_RandomAsciiString(void);
|
|
343
331
|
|
|
344
332
|
/**
|
|
345
333
|
* Generates random null-terminated string. The maximum length for
|
|
@@ -352,8 +340,7 @@ char * SDLTest_RandomAsciiString(void);
|
|
|
352
340
|
*
|
|
353
341
|
* \returns a newly allocated random string; or NULL if maxLength was invalid or string could not be allocated.
|
|
354
342
|
*/
|
|
355
|
-
char * SDLTest_RandomAsciiStringWithMaximumLength(int maxLength);
|
|
356
|
-
|
|
343
|
+
char * SDLCALL SDLTest_RandomAsciiStringWithMaximumLength(int maxLength);
|
|
357
344
|
|
|
358
345
|
/**
|
|
359
346
|
* Generates random null-terminated string. The length for
|
|
@@ -366,21 +353,19 @@ char * SDLTest_RandomAsciiStringWithMaximumLength(int maxLength);
|
|
|
366
353
|
*
|
|
367
354
|
* \returns a newly allocated random string; or NULL if size was invalid or string could not be allocated.
|
|
368
355
|
*/
|
|
369
|
-
char * SDLTest_RandomAsciiStringOfSize(int size);
|
|
356
|
+
char * SDLCALL SDLTest_RandomAsciiStringOfSize(int size);
|
|
370
357
|
|
|
371
358
|
/**
|
|
372
359
|
* Get the invocation count for the fuzzer since last ...FuzzerInit.
|
|
373
360
|
*
|
|
374
361
|
* \returns the invocation count.
|
|
375
362
|
*/
|
|
376
|
-
int SDLTest_GetFuzzerInvocationCount(void);
|
|
363
|
+
int SDLCALL SDLTest_GetFuzzerInvocationCount(void);
|
|
377
364
|
|
|
378
365
|
/* Ends C function definitions when using C++ */
|
|
379
366
|
#ifdef __cplusplus
|
|
380
367
|
}
|
|
381
368
|
#endif
|
|
382
|
-
#include
|
|
369
|
+
#include <SDL3/SDL_close_code.h>
|
|
383
370
|
|
|
384
371
|
#endif /* SDL_test_fuzzer_h_ */
|
|
385
|
-
|
|
386
|
-
/* vi: set ts=4 sw=4 expandtab: */
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
2
|
Simple DirectMedia Layer
|
|
3
|
-
Copyright (C) 1997-
|
|
3
|
+
Copyright (C) 1997-2026 Sam Lantinga <slouken@libsdl.org>
|
|
4
4
|
|
|
5
5
|
This software is provided 'as-is', without any express or implied
|
|
6
6
|
warranty. In no event will the authors be held liable for any damages
|
|
@@ -20,11 +20,9 @@
|
|
|
20
20
|
*/
|
|
21
21
|
|
|
22
22
|
/**
|
|
23
|
-
*
|
|
23
|
+
* Test suite related functions of SDL test framework.
|
|
24
24
|
*
|
|
25
|
-
*
|
|
26
|
-
*
|
|
27
|
-
* This code is a part of the SDL2_test library, not the main SDL library.
|
|
25
|
+
* This code is a part of the SDL test library, not the main SDL library.
|
|
28
26
|
*/
|
|
29
27
|
|
|
30
28
|
/*
|
|
@@ -36,13 +34,15 @@
|
|
|
36
34
|
#ifndef SDL_test_h_arness_h
|
|
37
35
|
#define SDL_test_h_arness_h
|
|
38
36
|
|
|
39
|
-
#include
|
|
37
|
+
#include <SDL3/SDL_stdinc.h>
|
|
38
|
+
#include <SDL3/SDL_test_common.h> /* SDLTest_CommonState */
|
|
39
|
+
|
|
40
|
+
#include <SDL3/SDL_begin_code.h>
|
|
40
41
|
/* Set up for C function definitions, even when using C++ */
|
|
41
42
|
#ifdef __cplusplus
|
|
42
43
|
extern "C" {
|
|
43
44
|
#endif
|
|
44
45
|
|
|
45
|
-
|
|
46
46
|
/* ! Definitions for test case structures */
|
|
47
47
|
#define TEST_ENABLED 1
|
|
48
48
|
#define TEST_DISABLED 0
|
|
@@ -61,15 +61,15 @@ extern "C" {
|
|
|
61
61
|
#define TEST_RESULT_SETUP_FAILURE 4
|
|
62
62
|
|
|
63
63
|
/* !< Function pointer to a test case setup function (run before every test) */
|
|
64
|
-
typedef void (*SDLTest_TestCaseSetUpFp)(void
|
|
64
|
+
typedef void (SDLCALL *SDLTest_TestCaseSetUpFp)(void **arg);
|
|
65
65
|
|
|
66
66
|
/* !< Function pointer to a test case function */
|
|
67
|
-
typedef int (*SDLTest_TestCaseFp)(void *arg);
|
|
67
|
+
typedef int (SDLCALL *SDLTest_TestCaseFp)(void *arg);
|
|
68
68
|
|
|
69
69
|
/* !< Function pointer to a test case teardown function (run after every test) */
|
|
70
|
-
typedef void (*SDLTest_TestCaseTearDownFp)(void *arg);
|
|
70
|
+
typedef void (SDLCALL *SDLTest_TestCaseTearDownFp)(void *arg);
|
|
71
71
|
|
|
72
|
-
|
|
72
|
+
/*
|
|
73
73
|
* Holds information about a single test case.
|
|
74
74
|
*/
|
|
75
75
|
typedef struct SDLTest_TestCaseReference {
|
|
@@ -83,7 +83,7 @@ typedef struct SDLTest_TestCaseReference {
|
|
|
83
83
|
int enabled;
|
|
84
84
|
} SDLTest_TestCaseReference;
|
|
85
85
|
|
|
86
|
-
|
|
86
|
+
/*
|
|
87
87
|
* Holds information about a test suite (multiple test cases).
|
|
88
88
|
*/
|
|
89
89
|
typedef struct SDLTest_TestSuiteReference {
|
|
@@ -98,37 +98,54 @@ typedef struct SDLTest_TestSuiteReference {
|
|
|
98
98
|
} SDLTest_TestSuiteReference;
|
|
99
99
|
|
|
100
100
|
|
|
101
|
-
|
|
102
|
-
*
|
|
103
|
-
*
|
|
104
|
-
* Note: The returned string needs to be deallocated by the caller.
|
|
101
|
+
/*
|
|
102
|
+
* Generates a random run seed string for the harness. The generated seed
|
|
103
|
+
* will contain alphanumeric characters (0-9A-Z).
|
|
105
104
|
*
|
|
106
|
-
* \param
|
|
105
|
+
* \param buffer Buffer in which to generate the random seed. Must have a capacity of at least length + 1 characters.
|
|
106
|
+
* \param length Number of alphanumeric characters to write to buffer, must be >0
|
|
107
107
|
*
|
|
108
|
-
* \returns
|
|
108
|
+
* \returns A null-terminated seed string and equal to the in put buffer on success, NULL on failure
|
|
109
109
|
*/
|
|
110
|
-
char *SDLTest_GenerateRunSeed(
|
|
110
|
+
char * SDLCALL SDLTest_GenerateRunSeed(char *buffer, int length);
|
|
111
111
|
|
|
112
|
-
|
|
113
|
-
*
|
|
112
|
+
/*
|
|
113
|
+
* Holds information about the execution of test suites.
|
|
114
|
+
* */
|
|
115
|
+
typedef struct SDLTest_TestSuiteRunner SDLTest_TestSuiteRunner;
|
|
116
|
+
|
|
117
|
+
/*
|
|
118
|
+
* Create a new test suite runner, that will execute the given test suites.
|
|
119
|
+
* It will register the harness cli arguments to the common SDL state.
|
|
114
120
|
*
|
|
115
|
-
* \param
|
|
116
|
-
* \param
|
|
117
|
-
* \param userExecKey Custom execution key provided by user, or 0 to autogenerate one.
|
|
118
|
-
* \param filter Filter specification. NULL disables. Case sensitive.
|
|
119
|
-
* \param testIterations Number of iterations to run each test case.
|
|
121
|
+
* \param state Common SDL state on which to register CLI arguments.
|
|
122
|
+
* \param testSuites NULL-terminated test suites containing test cases.
|
|
120
123
|
*
|
|
121
124
|
* \returns the test run result: 0 when all tests passed, 1 if any tests failed.
|
|
122
125
|
*/
|
|
123
|
-
|
|
126
|
+
SDLTest_TestSuiteRunner * SDLCALL SDLTest_CreateTestSuiteRunner(SDLTest_CommonState *state, SDLTest_TestSuiteReference *testSuites[]);
|
|
127
|
+
|
|
128
|
+
/*
|
|
129
|
+
* Destroy a test suite runner.
|
|
130
|
+
* It will unregister the harness cli arguments to the common SDL state.
|
|
131
|
+
*
|
|
132
|
+
* \param runner The runner that should be destroyed.
|
|
133
|
+
*/
|
|
134
|
+
void SDLCALL SDLTest_DestroyTestSuiteRunner(SDLTest_TestSuiteRunner *runner);
|
|
124
135
|
|
|
136
|
+
/*
|
|
137
|
+
* Execute a test suite, using the configured run seed, execution key, filter, etc.
|
|
138
|
+
*
|
|
139
|
+
* \param runner The runner that should be executed.
|
|
140
|
+
*
|
|
141
|
+
* \returns the test run result: 0 when all tests passed, 1 if any tests failed.
|
|
142
|
+
*/
|
|
143
|
+
int SDLCALL SDLTest_ExecuteTestSuiteRunner(SDLTest_TestSuiteRunner *runner);
|
|
125
144
|
|
|
126
145
|
/* Ends C function definitions when using C++ */
|
|
127
146
|
#ifdef __cplusplus
|
|
128
147
|
}
|
|
129
148
|
#endif
|
|
130
|
-
#include
|
|
149
|
+
#include <SDL3/SDL_close_code.h>
|
|
131
150
|
|
|
132
151
|
#endif /* SDL_test_h_arness_h */
|
|
133
|
-
|
|
134
|
-
/* vi: set ts=4 sw=4 expandtab: */
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
/*
|
|
2
|
+
Simple DirectMedia Layer
|
|
3
|
+
Copyright (C) 1997-2026 Sam Lantinga <slouken@libsdl.org>
|
|
4
|
+
|
|
5
|
+
This software is provided 'as-is', without any express or implied
|
|
6
|
+
warranty. In no event will the authors be held liable for any damages
|
|
7
|
+
arising from the use of this software.
|
|
8
|
+
|
|
9
|
+
Permission is granted to anyone to use this software for any purpose,
|
|
10
|
+
including commercial applications, and to alter it and redistribute it
|
|
11
|
+
freely, subject to the following restrictions:
|
|
12
|
+
|
|
13
|
+
1. The origin of this software must not be misrepresented; you must not
|
|
14
|
+
claim that you wrote the original software. If you use this software
|
|
15
|
+
in a product, an acknowledgment in the product documentation would be
|
|
16
|
+
appreciated but is not required.
|
|
17
|
+
2. Altered source versions must be plainly marked as such, and must not be
|
|
18
|
+
misrepresented as being the original software.
|
|
19
|
+
3. This notice may not be removed or altered from any source distribution.
|
|
20
|
+
*/
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Logging related functions of SDL test framework.
|
|
24
|
+
*
|
|
25
|
+
* This code is a part of the SDL test library, not the main SDL library.
|
|
26
|
+
*/
|
|
27
|
+
|
|
28
|
+
/*
|
|
29
|
+
*
|
|
30
|
+
* Wrapper to log in the TEST category
|
|
31
|
+
*
|
|
32
|
+
*/
|
|
33
|
+
|
|
34
|
+
#ifndef SDL_test_log_h_
|
|
35
|
+
#define SDL_test_log_h_
|
|
36
|
+
|
|
37
|
+
#include <SDL3/SDL_stdinc.h>
|
|
38
|
+
|
|
39
|
+
#include <SDL3/SDL_begin_code.h>
|
|
40
|
+
/* Set up for C function definitions, even when using C++ */
|
|
41
|
+
#ifdef __cplusplus
|
|
42
|
+
extern "C" {
|
|
43
|
+
#endif
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* Prints given message with a timestamp in the TEST category and given priority.
|
|
47
|
+
*
|
|
48
|
+
* \param priority Priority of the message
|
|
49
|
+
* \param fmt Message to be logged
|
|
50
|
+
*/
|
|
51
|
+
void SDLCALL SDLTest_LogMessage(SDL_LogPriority priority, SDL_PRINTF_FORMAT_STRING const char *fmt, ...);
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* Prints given message with a timestamp in the TEST category and INFO priority.
|
|
55
|
+
*
|
|
56
|
+
* \param fmt Message to be logged
|
|
57
|
+
*/
|
|
58
|
+
void SDLCALL SDLTest_Log(SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(1);
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
* Prints given prefix and buffer.
|
|
62
|
+
* Non-printible characters in the raw data are substituted by printible alternatives.
|
|
63
|
+
*
|
|
64
|
+
* \param prefix Prefix message.
|
|
65
|
+
* \param buffer Raw data to be escaped.
|
|
66
|
+
* \param size Number of bytes in buffer.
|
|
67
|
+
*/
|
|
68
|
+
void SDLCALL SDLTest_LogEscapedString(const char *prefix, const void *buffer, size_t size);
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* Prints given message with a timestamp in the TEST category and the ERROR priority.
|
|
72
|
+
*
|
|
73
|
+
* \param fmt Message to be logged
|
|
74
|
+
*/
|
|
75
|
+
void SDLCALL SDLTest_LogError(SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(1);
|
|
76
|
+
|
|
77
|
+
/* Ends C function definitions when using C++ */
|
|
78
|
+
#ifdef __cplusplus
|
|
79
|
+
}
|
|
80
|
+
#endif
|
|
81
|
+
#include <SDL3/SDL_close_code.h>
|
|
82
|
+
|
|
83
|
+
#endif /* SDL_test_log_h_ */
|