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.
Files changed (620) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE.md +7 -0
  3. data/README.md +141 -0
  4. data/USAGE.md +2435 -0
  5. data/assets/Rakefile +637 -0
  6. data/assets/build_support/CMakeLists.txt +94 -0
  7. data/assets/build_support/mruby/build_config.rb +34 -0
  8. data/assets/build_support/mruby/build_config_wasm.rb +30 -0
  9. data/assets/build_support/sdl_test.c +174 -0
  10. data/assets/deps.yaml +16 -0
  11. data/assets/platform/include/SDL3/SDL.h +91 -0
  12. data/assets/platform/include/SDL3/SDL_assert.h +705 -0
  13. data/assets/platform/include/SDL3/SDL_asyncio.h +550 -0
  14. data/assets/platform/include/SDL3/SDL_atomic.h +692 -0
  15. data/assets/platform/include/SDL3/SDL_audio.h +2370 -0
  16. data/assets/platform/include/SDL3/SDL_begin_code.h +553 -0
  17. data/assets/{include/SDL2 → platform/include/SDL3}/SDL_bits.h +47 -27
  18. data/assets/{include/SDL2 → platform/include/SDL3}/SDL_blendmode.h +59 -55
  19. data/assets/platform/include/SDL3/SDL_camera.h +535 -0
  20. data/assets/platform/include/SDL3/SDL_clipboard.h +331 -0
  21. data/assets/{include/SDL2/close_code.h → platform/include/SDL3/SDL_close_code.h} +9 -8
  22. data/assets/{include/SDL2 → platform/include/SDL3}/SDL_copying.h +3 -1
  23. data/assets/platform/include/SDL3/SDL_cpuinfo.h +374 -0
  24. data/assets/platform/include/SDL3/SDL_dialog.h +343 -0
  25. data/assets/platform/include/SDL3/SDL_dlopennote.h +234 -0
  26. data/assets/{include/SDL2 → platform/include/SDL3}/SDL_egl.h +11 -8
  27. data/assets/platform/include/SDL3/SDL_endian.h +645 -0
  28. data/assets/platform/include/SDL3/SDL_error.h +226 -0
  29. data/assets/platform/include/SDL3/SDL_events.h +1645 -0
  30. data/assets/platform/include/SDL3/SDL_filesystem.h +537 -0
  31. data/assets/platform/include/SDL3/SDL_gamepad.h +1656 -0
  32. data/assets/platform/include/SDL3/SDL_gpu.h +4608 -0
  33. data/assets/platform/include/SDL3/SDL_guid.h +106 -0
  34. data/assets/platform/include/SDL3/SDL_haptic.h +1461 -0
  35. data/assets/platform/include/SDL3/SDL_hidapi.h +571 -0
  36. data/assets/platform/include/SDL3/SDL_hints.h +5001 -0
  37. data/assets/platform/include/SDL3/SDL_init.h +507 -0
  38. data/assets/platform/include/SDL3/SDL_intrin.h +410 -0
  39. data/assets/platform/include/SDL3/SDL_iostream.h +1379 -0
  40. data/assets/platform/include/SDL3/SDL_joystick.h +1385 -0
  41. data/assets/platform/include/SDL3/SDL_keyboard.h +608 -0
  42. data/assets/platform/include/SDL3/SDL_keycode.h +347 -0
  43. data/assets/platform/include/SDL3/SDL_loadso.h +145 -0
  44. data/assets/{include/SDL2 → platform/include/SDL3}/SDL_locale.h +40 -24
  45. data/assets/platform/include/SDL3/SDL_log.h +541 -0
  46. data/assets/platform/include/SDL3/SDL_main.h +704 -0
  47. data/assets/platform/include/SDL3/SDL_main_impl.h +151 -0
  48. data/assets/{include/SDL2 → platform/include/SDL3}/SDL_messagebox.h +85 -48
  49. data/assets/{include/SDL2 → platform/include/SDL3}/SDL_metal.h +29 -29
  50. data/assets/{include/SDL2 → platform/include/SDL3}/SDL_misc.h +13 -12
  51. data/assets/platform/include/SDL3/SDL_mouse.h +813 -0
  52. data/assets/platform/include/SDL3/SDL_mutex.h +1117 -0
  53. data/assets/platform/include/SDL3/SDL_oldnames.h +1339 -0
  54. data/assets/{include/SDL2 → platform/include/SDL3}/SDL_opengl.h +1247 -278
  55. data/assets/{include/SDL2 → platform/include/SDL3}/SDL_opengl_glext.h +5 -1
  56. data/assets/{include/SDL2 → platform/include/SDL3}/SDL_opengles.h +6 -7
  57. data/assets/{include/SDL2 → platform/include/SDL3}/SDL_opengles2.h +10 -11
  58. data/assets/platform/include/SDL3/SDL_pen.h +198 -0
  59. data/assets/platform/include/SDL3/SDL_pixels.h +1441 -0
  60. data/assets/{include/SDL2/SDL_test_log.h → platform/include/SDL3/SDL_platform.h} +25 -26
  61. data/assets/platform/include/SDL3/SDL_platform_defines.h +497 -0
  62. data/assets/{include/SDL2 → platform/include/SDL3}/SDL_power.h +40 -20
  63. data/assets/platform/include/SDL3/SDL_process.h +441 -0
  64. data/assets/platform/include/SDL3/SDL_properties.h +572 -0
  65. data/assets/platform/include/SDL3/SDL_rect.h +528 -0
  66. data/assets/platform/include/SDL3/SDL_render.h +3028 -0
  67. data/assets/platform/include/SDL3/SDL_revision.h +59 -0
  68. data/assets/{include/SDL2 → platform/include/SDL3}/SDL_scancode.h +59 -68
  69. data/assets/platform/include/SDL3/SDL_sensor.h +321 -0
  70. data/assets/platform/include/SDL3/SDL_stdinc.h +6186 -0
  71. data/assets/platform/include/SDL3/SDL_storage.h +686 -0
  72. data/assets/platform/include/SDL3/SDL_surface.h +1769 -0
  73. data/assets/platform/include/SDL3/SDL_system.h +840 -0
  74. data/assets/{include/SDL2 → platform/include/SDL3}/SDL_test.h +16 -22
  75. data/assets/{include/SDL2 → platform/include/SDL3}/SDL_test_assert.h +27 -34
  76. data/assets/{include/SDL2 → platform/include/SDL3}/SDL_test_common.h +109 -52
  77. data/assets/{include/SDL2 → platform/include/SDL3}/SDL_test_compare.h +22 -14
  78. data/assets/{include/SDL2 → platform/include/SDL3}/SDL_test_crc32.h +27 -30
  79. data/assets/{include/SDL2 → platform/include/SDL3}/SDL_test_font.h +50 -49
  80. data/assets/{include/SDL2 → platform/include/SDL3}/SDL_test_fuzzer.h +64 -79
  81. data/assets/{include/SDL2 → platform/include/SDL3}/SDL_test_harness.h +47 -30
  82. data/assets/platform/include/SDL3/SDL_test_log.h +83 -0
  83. data/assets/{include/SDL2 → platform/include/SDL3}/SDL_test_md5.h +21 -28
  84. data/assets/{include/SDL2 → platform/include/SDL3}/SDL_test_memory.h +19 -16
  85. data/assets/platform/include/SDL3/SDL_thread.h +602 -0
  86. data/assets/platform/include/SDL3/SDL_time.h +249 -0
  87. data/assets/platform/include/SDL3/SDL_timer.h +454 -0
  88. data/assets/platform/include/SDL3/SDL_touch.h +184 -0
  89. data/assets/platform/include/SDL3/SDL_tray.h +544 -0
  90. data/assets/platform/include/SDL3/SDL_version.h +198 -0
  91. data/assets/platform/include/SDL3/SDL_video.h +3497 -0
  92. data/assets/platform/include/SDL3/SDL_vulkan.h +287 -0
  93. data/assets/platform/include/SDL3_image/SDL_image.h +3328 -0
  94. data/assets/platform/include/SDL3_mixer/SDL_mixer.h +3369 -0
  95. data/assets/platform/include/SDL3_ttf/SDL_textengine.h +181 -0
  96. data/assets/platform/include/SDL3_ttf/SDL_ttf.h +2833 -0
  97. data/assets/{include → platform/include}/mrbconf.h +42 -31
  98. data/assets/{include → platform/include}/mruby/array.h +3 -4
  99. data/assets/{include → platform/include}/mruby/boxing_nan.h +10 -0
  100. data/assets/platform/include/mruby/boxing_no.h +59 -0
  101. data/assets/{include → platform/include}/mruby/boxing_word.h +72 -26
  102. data/assets/platform/include/mruby/class.h +157 -0
  103. data/assets/{include → platform/include}/mruby/common.h +30 -1
  104. data/assets/{include → platform/include}/mruby/compile.h +52 -74
  105. data/assets/{include → platform/include}/mruby/data.h +2 -2
  106. data/assets/{include → platform/include}/mruby/debug.h +12 -5
  107. data/assets/{include → platform/include}/mruby/dump.h +7 -9
  108. data/assets/{include → platform/include}/mruby/endian.h +1 -1
  109. data/assets/platform/include/mruby/error.h +173 -0
  110. data/assets/platform/include/mruby/gc.h +79 -0
  111. data/assets/{include → platform/include}/mruby/hash.h +1 -7
  112. data/assets/platform/include/mruby/internal.h +282 -0
  113. data/assets/platform/include/mruby/irep.h +143 -0
  114. data/assets/{include → platform/include}/mruby/istruct.h +1 -1
  115. data/assets/platform/include/mruby/khash.h +455 -0
  116. data/assets/platform/include/mruby/mempool.h +19 -0
  117. data/assets/{include → platform/include}/mruby/numeric.h +7 -10
  118. data/assets/platform/include/mruby/object.h +51 -0
  119. data/assets/{include → platform/include}/mruby/opcode.h +5 -5
  120. data/assets/{include → platform/include}/mruby/ops.h +19 -6
  121. data/assets/platform/include/mruby/presym/id.h +1447 -0
  122. data/assets/{include → platform/include}/mruby/presym/scanning.h +10 -7
  123. data/assets/platform/include/mruby/presym/table.h +2893 -0
  124. data/assets/platform/include/mruby/presym.h +65 -0
  125. data/assets/platform/include/mruby/proc.h +184 -0
  126. data/assets/{include → platform/include}/mruby/range.h +0 -2
  127. data/assets/{include → platform/include}/mruby/string.h +33 -53
  128. data/assets/platform/include/mruby/throw.h +81 -0
  129. data/assets/{include → platform/include}/mruby/value.h +64 -29
  130. data/assets/{include → platform/include}/mruby/variable.h +6 -23
  131. data/assets/{include → platform/include}/mruby/version.h +7 -7
  132. data/assets/{include → platform/include}/mruby.h +238 -116
  133. data/assets/platform/macos-arm64/bin/mrbc +0 -0
  134. data/assets/platform/macos-arm64/lib/libSDL3.a +0 -0
  135. data/assets/platform/macos-arm64/lib/libSDL3_image.a +0 -0
  136. data/assets/platform/macos-arm64/lib/libSDL3_mixer.a +0 -0
  137. data/assets/platform/macos-arm64/lib/libSDL3_ttf.a +0 -0
  138. data/assets/platform/macos-arm64/lib/libmruby.a +0 -0
  139. data/assets/platform/wasm/lib/libFLAC.a +0 -0
  140. data/assets/platform/wasm/lib/libSDL3.a +0 -0
  141. data/assets/platform/wasm/lib/libSDL3_image.a +0 -0
  142. data/assets/platform/wasm/lib/libSDL3_mixer.a +0 -0
  143. data/assets/platform/wasm/lib/libSDL3_ttf.a +0 -0
  144. data/assets/platform/wasm/lib/libfreetype.a +0 -0
  145. data/assets/platform/wasm/lib/libharfbuzz.a +0 -0
  146. data/assets/platform/wasm/lib/libmruby.a +0 -0
  147. data/assets/platform/wasm/lib/libogg.a +0 -0
  148. data/assets/platform/wasm/lib/libplutosvg.a +0 -0
  149. data/assets/platform/wasm/lib/libplutovg.a +0 -0
  150. data/assets/platform/wasm/lib/libpng.a +0 -0
  151. data/assets/platform/wasm/lib/libpng16.a +0 -0
  152. data/assets/platform/wasm/lib/libvorbis.a +0 -0
  153. data/assets/platform/wasm/lib/libvorbisfile.a +0 -0
  154. data/assets/platform/wasm/lib/libzlibstatic.a +0 -0
  155. data/assets/platform/windows-arm64-mingw-ucrt/bin/mrbc.exe +0 -0
  156. data/assets/platform/windows-arm64-mingw-ucrt/lib/libSDL3.a +0 -0
  157. data/assets/platform/windows-arm64-mingw-ucrt/lib/libSDL3_image.a +0 -0
  158. data/assets/platform/windows-arm64-mingw-ucrt/lib/libSDL3_mixer.a +0 -0
  159. data/assets/platform/windows-arm64-mingw-ucrt/lib/libSDL3_ttf.a +0 -0
  160. data/assets/platform/windows-arm64-mingw-ucrt/lib/libmruby.a +0 -0
  161. data/assets/platform/windows-x86_64-mingw-ucrt/bin/mrbc.exe +0 -0
  162. data/assets/platform/windows-x86_64-mingw-ucrt/lib/libSDL3.a +0 -0
  163. data/assets/platform/windows-x86_64-mingw-ucrt/lib/libSDL3_image.a +0 -0
  164. data/assets/platform/windows-x86_64-mingw-ucrt/lib/libSDL3_mixer.a +0 -0
  165. data/assets/platform/windows-x86_64-mingw-ucrt/lib/libSDL3_ttf.a +0 -0
  166. data/assets/platform/windows-x86_64-mingw-ucrt/lib/libmruby.a +0 -0
  167. data/assets/resources/fonts/outfit/OFL.txt +93 -0
  168. data/assets/resources/fonts/outfit/outfit.ttf +0 -0
  169. data/assets/resources/fonts/roboto_mono/OFL.txt +91 -0
  170. data/assets/resources/fonts/roboto_mono/roboto_mono.ttf +0 -0
  171. data/assets/resources/icons/icon.icns +0 -0
  172. data/assets/resources/icons/icon.png +0 -0
  173. data/assets/resources/spritesheets/License.txt +28 -0
  174. data/assets/resources/spritesheets/spritesheet-backgrounds.png +0 -0
  175. data/assets/resources/spritesheets/spritesheet-backgrounds.xml +16 -0
  176. data/assets/resources/spritesheets/spritesheet-characters.png +0 -0
  177. data/assets/resources/spritesheets/spritesheet-characters.xml +47 -0
  178. data/assets/resources/spritesheets/spritesheet-enemies.png +0 -0
  179. data/assets/resources/spritesheets/spritesheet-enemies.xml +62 -0
  180. data/assets/resources/spritesheets/spritesheet-tiles.png +0 -0
  181. data/assets/resources/spritesheets/spritesheet-tiles.xml +316 -0
  182. data/assets/{wasm → resources/web}/template.html +1 -1
  183. data/assets/target.rb +131 -0
  184. data/bin/ruby2d +281 -82
  185. data/examples/astar.rb +269 -0
  186. data/examples/asteroids.rb +403 -0
  187. data/examples/bezier_editor.rb +96 -0
  188. data/examples/boids.rb +191 -0
  189. data/examples/bouncing_balls.rb +119 -0
  190. data/examples/breakout.rb +186 -0
  191. data/examples/constellations.rb +100 -0
  192. data/examples/dashboard.rb +133 -0
  193. data/examples/double_pendulum.rb +254 -0
  194. data/examples/falling_sand.rb +291 -0
  195. data/examples/fireworks.rb +110 -0
  196. data/examples/fluid_dynamics.rb +340 -0
  197. data/examples/fourier_epicycles.rb +142 -0
  198. data/examples/fractal_tree.rb +326 -0
  199. data/examples/game_of_life.rb +148 -0
  200. data/examples/gamepads.rb +333 -0
  201. data/examples/hill_driver.rb +613 -0
  202. data/examples/logo_animation.rb +251 -0
  203. data/examples/lorenz_attractor.rb +115 -0
  204. data/examples/mandelbrot.rb +207 -0
  205. data/examples/marching_squares.rb +200 -0
  206. data/examples/maze.rb +323 -0
  207. data/examples/nbody.rb +338 -0
  208. data/examples/outrun.rb +391 -0
  209. data/examples/pixel_paint.rb +313 -0
  210. data/examples/platformer.rb +335 -0
  211. data/examples/ray_casting_maze.rb +175 -0
  212. data/examples/shadow_casting.rb +151 -0
  213. data/examples/shape_recognizer.rb +908 -0
  214. data/examples/snake.rb +144 -0
  215. data/examples/sprite_sheets.rb +246 -0
  216. data/examples/swarm.rb +206 -0
  217. data/examples/tsp_annealing.rb +104 -0
  218. data/examples/ui_controls.rb +163 -0
  219. data/examples/wireframe_3d.rb +139 -0
  220. data/ext/ruby2d/audio.c +324 -0
  221. data/ext/ruby2d/canvas.c +1715 -494
  222. data/ext/ruby2d/ext.c +541 -0
  223. data/ext/ruby2d/extconf.rb +122 -145
  224. data/ext/ruby2d/font.c +566 -20
  225. data/ext/ruby2d/fps.c +92 -0
  226. data/ext/ruby2d/image.c +466 -41
  227. data/ext/ruby2d/ruby2d.c +374 -1890
  228. data/ext/ruby2d/ruby2d.h +840 -460
  229. data/ext/ruby2d/shapes.c +931 -101
  230. data/ext/ruby2d/text.c +586 -21
  231. data/ext/ruby2d/window.c +1693 -283
  232. data/lib/ruby2d/atlas_parser.rb +194 -0
  233. data/lib/ruby2d/audio.rb +73 -0
  234. data/lib/ruby2d/benchmark.rb +259 -0
  235. data/lib/ruby2d/bitmap_text.rb +155 -0
  236. data/lib/ruby2d/button.rb +402 -0
  237. data/lib/ruby2d/canvas.rb +703 -279
  238. data/lib/ruby2d/circle.rb +206 -29
  239. data/lib/ruby2d/cli/browser.rb +314 -0
  240. data/lib/ruby2d/cli/build.rb +471 -257
  241. data/lib/ruby2d/cli/colorize.rb +7 -5
  242. data/lib/ruby2d/cli/examples.rb +127 -0
  243. data/lib/ruby2d/cli/launch.rb +24 -39
  244. data/lib/ruby2d/cli/lib_files.rb +48 -0
  245. data/lib/ruby2d/cli/messages.rb +40 -0
  246. data/lib/ruby2d/cli/setup.rb +273 -0
  247. data/lib/ruby2d/cli/static_server.rb +160 -0
  248. data/lib/ruby2d/cli/usage.rb +255 -0
  249. data/lib/ruby2d/color.rb +191 -69
  250. data/lib/ruby2d/core.rb +37 -19
  251. data/lib/ruby2d/deps_help.rb +89 -0
  252. data/lib/ruby2d/dsl.rb +51 -12
  253. data/lib/ruby2d/ellipse.rb +228 -0
  254. data/lib/ruby2d/exceptions.rb +0 -2
  255. data/lib/ruby2d/font.rb +34 -74
  256. data/lib/ruby2d/gamepad.rb +323 -0
  257. data/lib/ruby2d/gem_paths.rb +19 -0
  258. data/lib/ruby2d/image.rb +155 -52
  259. data/lib/ruby2d/interactive.rb +103 -0
  260. data/lib/ruby2d/json_parser.rb +268 -0
  261. data/lib/ruby2d/line.rb +194 -85
  262. data/lib/ruby2d/mruby_compat.rb +12 -0
  263. data/lib/ruby2d/polygon.rb +297 -0
  264. data/lib/ruby2d/polyline.rb +368 -0
  265. data/lib/ruby2d/quad.rb +358 -94
  266. data/lib/ruby2d/rectangle.rb +77 -19
  267. data/lib/ruby2d/renderable.rb +411 -11
  268. data/lib/ruby2d/sprite.rb +471 -180
  269. data/lib/ruby2d/sprite_sheet.rb +64 -0
  270. data/lib/ruby2d/square.rb +29 -17
  271. data/lib/ruby2d/text.rb +196 -65
  272. data/lib/ruby2d/tileset.rb +139 -81
  273. data/lib/ruby2d/triangle.rb +324 -89
  274. data/lib/ruby2d/version.rb +1 -3
  275. data/lib/ruby2d/vertices.rb +62 -85
  276. data/lib/ruby2d/warnings.rb +29 -0
  277. data/lib/ruby2d/window/class_methods.rb +218 -0
  278. data/lib/ruby2d/window/gamepad_events.rb +141 -0
  279. data/lib/ruby2d/window/key_events.rb +74 -0
  280. data/lib/ruby2d/window/mouse_events.rb +171 -0
  281. data/lib/ruby2d/window/object_events.rb +168 -0
  282. data/lib/ruby2d/window.rb +632 -585
  283. data/lib/ruby2d.rb +14 -19
  284. metadata +275 -443
  285. data/assets/app.icns +0 -0
  286. data/assets/include/GL/glew.h +0 -26427
  287. data/assets/include/GLES2/gl2.h +0 -656
  288. data/assets/include/GLES2/gl2ext.h +0 -3949
  289. data/assets/include/GLES2/gl2ext_angle.h +0 -701
  290. data/assets/include/GLES2/gl2platform.h +0 -27
  291. data/assets/include/GLES3/gl3.h +0 -1192
  292. data/assets/include/GLES3/gl31.h +0 -1507
  293. data/assets/include/GLES3/gl32.h +0 -1808
  294. data/assets/include/GLES3/gl3platform.h +0 -27
  295. data/assets/include/KHR/khrplatform.h +0 -290
  296. data/assets/include/SDL2/SDL.h +0 -233
  297. data/assets/include/SDL2/SDL_assert.h +0 -326
  298. data/assets/include/SDL2/SDL_atomic.h +0 -415
  299. data/assets/include/SDL2/SDL_audio.h +0 -1500
  300. data/assets/include/SDL2/SDL_clipboard.h +0 -141
  301. data/assets/include/SDL2/SDL_config.h +0 -61
  302. data/assets/include/SDL2/SDL_config_android.h +0 -194
  303. data/assets/include/SDL2/SDL_config_emscripten.h +0 -218
  304. data/assets/include/SDL2/SDL_config_iphoneos.h +0 -217
  305. data/assets/include/SDL2/SDL_config_macosx.h +0 -277
  306. data/assets/include/SDL2/SDL_config_minimal.h +0 -95
  307. data/assets/include/SDL2/SDL_config_ngage.h +0 -89
  308. data/assets/include/SDL2/SDL_config_os2.h +0 -207
  309. data/assets/include/SDL2/SDL_config_pandora.h +0 -141
  310. data/assets/include/SDL2/SDL_config_windows.h +0 -331
  311. data/assets/include/SDL2/SDL_config_wingdk.h +0 -253
  312. data/assets/include/SDL2/SDL_config_winrt.h +0 -220
  313. data/assets/include/SDL2/SDL_config_xbox.h +0 -235
  314. data/assets/include/SDL2/SDL_cpuinfo.h +0 -594
  315. data/assets/include/SDL2/SDL_endian.h +0 -348
  316. data/assets/include/SDL2/SDL_error.h +0 -163
  317. data/assets/include/SDL2/SDL_events.h +0 -1166
  318. data/assets/include/SDL2/SDL_filesystem.h +0 -149
  319. data/assets/include/SDL2/SDL_gamecontroller.h +0 -1074
  320. data/assets/include/SDL2/SDL_gesture.h +0 -117
  321. data/assets/include/SDL2/SDL_guid.h +0 -100
  322. data/assets/include/SDL2/SDL_haptic.h +0 -1341
  323. data/assets/include/SDL2/SDL_hidapi.h +0 -451
  324. data/assets/include/SDL2/SDL_hints.h +0 -2569
  325. data/assets/include/SDL2/SDL_image.h +0 -2173
  326. data/assets/include/SDL2/SDL_joystick.h +0 -1066
  327. data/assets/include/SDL2/SDL_keyboard.h +0 -353
  328. data/assets/include/SDL2/SDL_keycode.h +0 -358
  329. data/assets/include/SDL2/SDL_loadso.h +0 -115
  330. data/assets/include/SDL2/SDL_log.h +0 -404
  331. data/assets/include/SDL2/SDL_main.h +0 -275
  332. data/assets/include/SDL2/SDL_mixer.h +0 -2784
  333. data/assets/include/SDL2/SDL_mouse.h +0 -465
  334. data/assets/include/SDL2/SDL_mutex.h +0 -471
  335. data/assets/include/SDL2/SDL_name.h +0 -33
  336. data/assets/include/SDL2/SDL_pixels.h +0 -644
  337. data/assets/include/SDL2/SDL_platform.h +0 -261
  338. data/assets/include/SDL2/SDL_quit.h +0 -58
  339. data/assets/include/SDL2/SDL_rect.h +0 -376
  340. data/assets/include/SDL2/SDL_render.h +0 -1919
  341. data/assets/include/SDL2/SDL_revision.h +0 -6
  342. data/assets/include/SDL2/SDL_rwops.h +0 -841
  343. data/assets/include/SDL2/SDL_sensor.h +0 -322
  344. data/assets/include/SDL2/SDL_shape.h +0 -155
  345. data/assets/include/SDL2/SDL_stdinc.h +0 -830
  346. data/assets/include/SDL2/SDL_surface.h +0 -997
  347. data/assets/include/SDL2/SDL_system.h +0 -623
  348. data/assets/include/SDL2/SDL_syswm.h +0 -386
  349. data/assets/include/SDL2/SDL_test_images.h +0 -78
  350. data/assets/include/SDL2/SDL_test_random.h +0 -115
  351. data/assets/include/SDL2/SDL_thread.h +0 -464
  352. data/assets/include/SDL2/SDL_timer.h +0 -222
  353. data/assets/include/SDL2/SDL_touch.h +0 -150
  354. data/assets/include/SDL2/SDL_ttf.h +0 -2316
  355. data/assets/include/SDL2/SDL_types.h +0 -29
  356. data/assets/include/SDL2/SDL_version.h +0 -204
  357. data/assets/include/SDL2/SDL_video.h +0 -2150
  358. data/assets/include/SDL2/SDL_vulkan.h +0 -215
  359. data/assets/include/SDL2/begin_code.h +0 -187
  360. data/assets/include/mruby/boxing_no.h +0 -58
  361. data/assets/include/mruby/class.h +0 -108
  362. data/assets/include/mruby/error.h +0 -147
  363. data/assets/include/mruby/gc.h +0 -94
  364. data/assets/include/mruby/irep.h +0 -147
  365. data/assets/include/mruby/khash.h +0 -284
  366. data/assets/include/mruby/object.h +0 -43
  367. data/assets/include/mruby/presym/disable.h +0 -70
  368. data/assets/include/mruby/presym/enable.h +0 -37
  369. data/assets/include/mruby/presym.h +0 -40
  370. data/assets/include/mruby/proc.h +0 -211
  371. data/assets/include/mruby/throw.h +0 -66
  372. data/assets/macos/universal/bin/mrbc +0 -0
  373. data/assets/macos/universal/lib/libFLAC.a +0 -0
  374. data/assets/macos/universal/lib/libSDL2.a +0 -0
  375. data/assets/macos/universal/lib/libSDL2_image.a +0 -0
  376. data/assets/macos/universal/lib/libSDL2_mixer.a +0 -0
  377. data/assets/macos/universal/lib/libSDL2_ttf.a +0 -0
  378. data/assets/macos/universal/lib/libavif.a +0 -0
  379. data/assets/macos/universal/lib/libbrotlicommon-static.a +0 -0
  380. data/assets/macos/universal/lib/libbrotlidec-static.a +0 -0
  381. data/assets/macos/universal/lib/libfreetype.a +0 -0
  382. data/assets/macos/universal/lib/libgraphite2.a +0 -0
  383. data/assets/macos/universal/lib/libharfbuzz.a +0 -0
  384. data/assets/macos/universal/lib/libhwy.a +0 -0
  385. data/assets/macos/universal/lib/libjpeg.a +0 -0
  386. data/assets/macos/universal/lib/libjxl.a +0 -0
  387. data/assets/macos/universal/lib/libmodplug.a +0 -0
  388. data/assets/macos/universal/lib/libmpg123.a +0 -0
  389. data/assets/macos/universal/lib/libmruby.a +0 -0
  390. data/assets/macos/universal/lib/libogg.a +0 -0
  391. data/assets/macos/universal/lib/libpng.a +0 -0
  392. data/assets/macos/universal/lib/libtiff.a +0 -0
  393. data/assets/macos/universal/lib/libvorbis.a +0 -0
  394. data/assets/macos/universal/lib/libvorbisfile.a +0 -0
  395. data/assets/macos/universal/lib/libwebp.a +0 -0
  396. data/assets/macos/universal/lib/libzstd.a +0 -0
  397. data/assets/test_media/README.md +0 -3
  398. data/assets/test_media/bitstream_vera/COPYRIGHT.txt +0 -124
  399. data/assets/test_media/bitstream_vera/vera.ttf +0 -0
  400. data/assets/test_media/boom.png +0 -0
  401. data/assets/test_media/coin.png +0 -0
  402. data/assets/test_media/colors.png +0 -0
  403. data/assets/test_media/controller.png +0 -0
  404. data/assets/test_media/dial.wav +0 -0
  405. data/assets/test_media/hero.png +0 -0
  406. data/assets/test_media/image.bmp +0 -0
  407. data/assets/test_media/image.jpg +0 -0
  408. data/assets/test_media/image.png +0 -0
  409. data/assets/test_media/music.flac +0 -0
  410. data/assets/test_media/music.mp3 +0 -0
  411. data/assets/test_media/music.ogg +0 -0
  412. data/assets/test_media/music.wav +0 -0
  413. data/assets/test_media/originals/boom.pxm +0 -0
  414. data/assets/test_media/originals/coin.pxm +0 -0
  415. data/assets/test_media/originals/controller.sketch +0 -0
  416. data/assets/test_media/originals/hero.pxm +0 -0
  417. data/assets/test_media/originals/image.pxm +0 -0
  418. data/assets/test_media/originals/music.caf +0 -0
  419. data/assets/test_media/originals/texture_atlas.pxm +0 -0
  420. data/assets/test_media/rondo_alla_turka.ogg +0 -0
  421. data/assets/test_media/sound.flac +0 -0
  422. data/assets/test_media/sound.mp3 +0 -0
  423. data/assets/test_media/sound.ogg +0 -0
  424. data/assets/test_media/sound.wav +0 -0
  425. data/assets/test_media/sprite_sheet.png +0 -0
  426. data/assets/test_media/texture_atlas.png +0 -0
  427. data/assets/wasm/libmruby.a +0 -0
  428. data/assets/windows/mingw-w64-ucrt-x86_64/bin/mrbc.exe +0 -0
  429. data/assets/windows/mingw-w64-ucrt-x86_64/lib/libFLAC.a +0 -0
  430. data/assets/windows/mingw-w64-ucrt-x86_64/lib/libLerc.a +0 -0
  431. data/assets/windows/mingw-w64-ucrt-x86_64/lib/libSDL2.a +0 -0
  432. data/assets/windows/mingw-w64-ucrt-x86_64/lib/libSDL2_image.a +0 -0
  433. data/assets/windows/mingw-w64-ucrt-x86_64/lib/libSDL2_mixer.a +0 -0
  434. data/assets/windows/mingw-w64-ucrt-x86_64/lib/libSDL2_ttf.a +0 -0
  435. data/assets/windows/mingw-w64-ucrt-x86_64/lib/libbrotlicommon.a +0 -0
  436. data/assets/windows/mingw-w64-ucrt-x86_64/lib/libbrotlidec.a +0 -0
  437. data/assets/windows/mingw-w64-ucrt-x86_64/lib/libbz2.a +0 -0
  438. data/assets/windows/mingw-w64-ucrt-x86_64/lib/libdeflate.a +0 -0
  439. data/assets/windows/mingw-w64-ucrt-x86_64/lib/libfreetype.a +0 -0
  440. data/assets/windows/mingw-w64-ucrt-x86_64/lib/libglew32.a +0 -0
  441. data/assets/windows/mingw-w64-ucrt-x86_64/lib/libgraphite2.a +0 -0
  442. data/assets/windows/mingw-w64-ucrt-x86_64/lib/libharfbuzz.a +0 -0
  443. data/assets/windows/mingw-w64-ucrt-x86_64/lib/libhwy.a +0 -0
  444. data/assets/windows/mingw-w64-ucrt-x86_64/lib/libjbig.a +0 -0
  445. data/assets/windows/mingw-w64-ucrt-x86_64/lib/libjpeg.a +0 -0
  446. data/assets/windows/mingw-w64-ucrt-x86_64/lib/libjxl.a +0 -0
  447. data/assets/windows/mingw-w64-ucrt-x86_64/lib/liblzma.a +0 -0
  448. data/assets/windows/mingw-w64-ucrt-x86_64/lib/libmodplug.a +0 -0
  449. data/assets/windows/mingw-w64-ucrt-x86_64/lib/libmpg123.a +0 -0
  450. data/assets/windows/mingw-w64-ucrt-x86_64/lib/libmruby.a +0 -0
  451. data/assets/windows/mingw-w64-ucrt-x86_64/lib/libogg.a +0 -0
  452. data/assets/windows/mingw-w64-ucrt-x86_64/lib/libopus.a +0 -0
  453. data/assets/windows/mingw-w64-ucrt-x86_64/lib/libopusfile.a +0 -0
  454. data/assets/windows/mingw-w64-ucrt-x86_64/lib/libpng.a +0 -0
  455. data/assets/windows/mingw-w64-ucrt-x86_64/lib/libsndfile.a +0 -0
  456. data/assets/windows/mingw-w64-ucrt-x86_64/lib/libssp.a +0 -1
  457. data/assets/windows/mingw-w64-ucrt-x86_64/lib/libstdc++.a +0 -0
  458. data/assets/windows/mingw-w64-ucrt-x86_64/lib/libtiff.a +0 -0
  459. data/assets/windows/mingw-w64-ucrt-x86_64/lib/libvorbis.a +0 -0
  460. data/assets/windows/mingw-w64-ucrt-x86_64/lib/libvorbisfile.a +0 -0
  461. data/assets/windows/mingw-w64-ucrt-x86_64/lib/libwebp.a +0 -0
  462. data/assets/windows/mingw-w64-ucrt-x86_64/lib/libz.a +0 -0
  463. data/assets/windows/mingw-w64-ucrt-x86_64/lib/libzstd.a +0 -0
  464. data/assets/windows/mingw-w64-x86_64/bin/mrbc.exe +0 -0
  465. data/assets/windows/mingw-w64-x86_64/lib/libFLAC.a +0 -0
  466. data/assets/windows/mingw-w64-x86_64/lib/libLerc.a +0 -0
  467. data/assets/windows/mingw-w64-x86_64/lib/libSDL2.a +0 -0
  468. data/assets/windows/mingw-w64-x86_64/lib/libSDL2_image.a +0 -0
  469. data/assets/windows/mingw-w64-x86_64/lib/libSDL2_mixer.a +0 -0
  470. data/assets/windows/mingw-w64-x86_64/lib/libSDL2_ttf.a +0 -0
  471. data/assets/windows/mingw-w64-x86_64/lib/libbrotlicommon.a +0 -0
  472. data/assets/windows/mingw-w64-x86_64/lib/libbrotlidec.a +0 -0
  473. data/assets/windows/mingw-w64-x86_64/lib/libbz2.a +0 -0
  474. data/assets/windows/mingw-w64-x86_64/lib/libdeflate.a +0 -0
  475. data/assets/windows/mingw-w64-x86_64/lib/libfreetype.a +0 -0
  476. data/assets/windows/mingw-w64-x86_64/lib/libglew32.a +0 -0
  477. data/assets/windows/mingw-w64-x86_64/lib/libgraphite2.a +0 -0
  478. data/assets/windows/mingw-w64-x86_64/lib/libharfbuzz.a +0 -0
  479. data/assets/windows/mingw-w64-x86_64/lib/libhwy.a +0 -0
  480. data/assets/windows/mingw-w64-x86_64/lib/libjbig.a +0 -0
  481. data/assets/windows/mingw-w64-x86_64/lib/libjpeg.a +0 -0
  482. data/assets/windows/mingw-w64-x86_64/lib/libjxl.a +0 -0
  483. data/assets/windows/mingw-w64-x86_64/lib/liblzma.a +0 -0
  484. data/assets/windows/mingw-w64-x86_64/lib/libmodplug.a +0 -0
  485. data/assets/windows/mingw-w64-x86_64/lib/libmpg123.a +0 -0
  486. data/assets/windows/mingw-w64-x86_64/lib/libmruby.a +0 -0
  487. data/assets/windows/mingw-w64-x86_64/lib/libogg.a +0 -0
  488. data/assets/windows/mingw-w64-x86_64/lib/libopus.a +0 -0
  489. data/assets/windows/mingw-w64-x86_64/lib/libopusfile.a +0 -0
  490. data/assets/windows/mingw-w64-x86_64/lib/libpng.a +0 -0
  491. data/assets/windows/mingw-w64-x86_64/lib/libsndfile.a +0 -0
  492. data/assets/windows/mingw-w64-x86_64/lib/libssp.a +0 -1
  493. data/assets/windows/mingw-w64-x86_64/lib/libstdc++.a +0 -0
  494. data/assets/windows/mingw-w64-x86_64/lib/libtiff.a +0 -0
  495. data/assets/windows/mingw-w64-x86_64/lib/libvorbis.a +0 -0
  496. data/assets/windows/mingw-w64-x86_64/lib/libvorbisfile.a +0 -0
  497. data/assets/windows/mingw-w64-x86_64/lib/libwebp.a +0 -0
  498. data/assets/windows/mingw-w64-x86_64/lib/libz.a +0 -0
  499. data/assets/windows/mingw-w64-x86_64/lib/libzstd.a +0 -0
  500. data/assets/xcode/ios/Assets.xcassets/AppIcon.appiconset/Contents.json +0 -98
  501. data/assets/xcode/ios/Assets.xcassets/Contents.json +0 -6
  502. data/assets/xcode/ios/Base.lproj/LaunchScreen.storyboard +0 -27
  503. data/assets/xcode/ios/Info.plist +0 -43
  504. data/assets/xcode/ios/MRuby.framework/Headers/mrbconf.h +0 -143
  505. data/assets/xcode/ios/MRuby.framework/Headers/mruby/array.h +0 -280
  506. data/assets/xcode/ios/MRuby.framework/Headers/mruby/boxing_nan.h +0 -102
  507. data/assets/xcode/ios/MRuby.framework/Headers/mruby/boxing_no.h +0 -56
  508. data/assets/xcode/ios/MRuby.framework/Headers/mruby/boxing_word.h +0 -144
  509. data/assets/xcode/ios/MRuby.framework/Headers/mruby/class.h +0 -97
  510. data/assets/xcode/ios/MRuby.framework/Headers/mruby/common.h +0 -77
  511. data/assets/xcode/ios/MRuby.framework/Headers/mruby/compile.h +0 -195
  512. data/assets/xcode/ios/MRuby.framework/Headers/mruby/data.h +0 -75
  513. data/assets/xcode/ios/MRuby.framework/Headers/mruby/debug.h +0 -67
  514. data/assets/xcode/ios/MRuby.framework/Headers/mruby/dump.h +0 -196
  515. data/assets/xcode/ios/MRuby.framework/Headers/mruby/error.h +0 -75
  516. data/assets/xcode/ios/MRuby.framework/Headers/mruby/gc.h +0 -91
  517. data/assets/xcode/ios/MRuby.framework/Headers/mruby/hash.h +0 -215
  518. data/assets/xcode/ios/MRuby.framework/Headers/mruby/irep.h +0 -75
  519. data/assets/xcode/ios/MRuby.framework/Headers/mruby/istruct.h +0 -47
  520. data/assets/xcode/ios/MRuby.framework/Headers/mruby/khash.h +0 -274
  521. data/assets/xcode/ios/MRuby.framework/Headers/mruby/numeric.h +0 -161
  522. data/assets/xcode/ios/MRuby.framework/Headers/mruby/object.h +0 -44
  523. data/assets/xcode/ios/MRuby.framework/Headers/mruby/opcode.h +0 -69
  524. data/assets/xcode/ios/MRuby.framework/Headers/mruby/ops.h +0 -117
  525. data/assets/xcode/ios/MRuby.framework/Headers/mruby/proc.h +0 -131
  526. data/assets/xcode/ios/MRuby.framework/Headers/mruby/range.h +0 -49
  527. data/assets/xcode/ios/MRuby.framework/Headers/mruby/re.h +0 -16
  528. data/assets/xcode/ios/MRuby.framework/Headers/mruby/string.h +0 -444
  529. data/assets/xcode/ios/MRuby.framework/Headers/mruby/throw.h +0 -55
  530. data/assets/xcode/ios/MRuby.framework/Headers/mruby/value.h +0 -309
  531. data/assets/xcode/ios/MRuby.framework/Headers/mruby/variable.h +0 -136
  532. data/assets/xcode/ios/MRuby.framework/Headers/mruby/version.h +0 -110
  533. data/assets/xcode/ios/MRuby.framework/Headers/mruby.h +0 -1282
  534. data/assets/xcode/ios/MRuby.framework/Info.plist +0 -20
  535. data/assets/xcode/ios/MRuby.framework/MRuby +0 -0
  536. data/assets/xcode/ios/MyApp.xcodeproj/project.pbxproj +0 -368
  537. data/assets/xcode/ios/MyApp.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  538. data/assets/xcode/ios/MyApp.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
  539. data/assets/xcode/ios/MyApp.xcodeproj/project.xcworkspace/xcshareddata/MyApp.xcscmblueprint +0 -30
  540. data/assets/xcode/ios/main.c +0 -1
  541. data/assets/xcode/tvos/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Large.imagestack/Back.imagestacklayer/Content.imageset/Contents.json +0 -16
  542. data/assets/xcode/tvos/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Large.imagestack/Back.imagestacklayer/Contents.json +0 -6
  543. data/assets/xcode/tvos/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Large.imagestack/Contents.json +0 -17
  544. data/assets/xcode/tvos/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Large.imagestack/Front.imagestacklayer/Content.imageset/Contents.json +0 -16
  545. data/assets/xcode/tvos/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Large.imagestack/Front.imagestacklayer/Contents.json +0 -6
  546. data/assets/xcode/tvos/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Large.imagestack/Middle.imagestacklayer/Content.imageset/Contents.json +0 -16
  547. data/assets/xcode/tvos/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Large.imagestack/Middle.imagestacklayer/Contents.json +0 -6
  548. data/assets/xcode/tvos/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Small.imagestack/Back.imagestacklayer/Content.imageset/Contents.json +0 -16
  549. data/assets/xcode/tvos/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Small.imagestack/Back.imagestacklayer/Contents.json +0 -6
  550. data/assets/xcode/tvos/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Small.imagestack/Contents.json +0 -17
  551. data/assets/xcode/tvos/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Small.imagestack/Front.imagestacklayer/Content.imageset/Contents.json +0 -16
  552. data/assets/xcode/tvos/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Small.imagestack/Front.imagestacklayer/Contents.json +0 -6
  553. data/assets/xcode/tvos/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Small.imagestack/Middle.imagestacklayer/Content.imageset/Contents.json +0 -16
  554. data/assets/xcode/tvos/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Small.imagestack/Middle.imagestacklayer/Contents.json +0 -6
  555. data/assets/xcode/tvos/Assets.xcassets/App Icon & Top Shelf Image.brandassets/Contents.json +0 -32
  556. data/assets/xcode/tvos/Assets.xcassets/App Icon & Top Shelf Image.brandassets/Top Shelf Image Wide.imageset/Contents.json +0 -16
  557. data/assets/xcode/tvos/Assets.xcassets/App Icon & Top Shelf Image.brandassets/Top Shelf Image.imageset/Contents.json +0 -16
  558. data/assets/xcode/tvos/Assets.xcassets/Contents.json +0 -6
  559. data/assets/xcode/tvos/Assets.xcassets/LaunchImage.launchimage/Contents.json +0 -22
  560. data/assets/xcode/tvos/Info.plist +0 -30
  561. data/assets/xcode/tvos/MRuby.framework/Headers/mrbconf.h +0 -143
  562. data/assets/xcode/tvos/MRuby.framework/Headers/mruby/array.h +0 -280
  563. data/assets/xcode/tvos/MRuby.framework/Headers/mruby/boxing_nan.h +0 -102
  564. data/assets/xcode/tvos/MRuby.framework/Headers/mruby/boxing_no.h +0 -56
  565. data/assets/xcode/tvos/MRuby.framework/Headers/mruby/boxing_word.h +0 -144
  566. data/assets/xcode/tvos/MRuby.framework/Headers/mruby/class.h +0 -97
  567. data/assets/xcode/tvos/MRuby.framework/Headers/mruby/common.h +0 -77
  568. data/assets/xcode/tvos/MRuby.framework/Headers/mruby/compile.h +0 -195
  569. data/assets/xcode/tvos/MRuby.framework/Headers/mruby/data.h +0 -75
  570. data/assets/xcode/tvos/MRuby.framework/Headers/mruby/debug.h +0 -67
  571. data/assets/xcode/tvos/MRuby.framework/Headers/mruby/dump.h +0 -196
  572. data/assets/xcode/tvos/MRuby.framework/Headers/mruby/error.h +0 -75
  573. data/assets/xcode/tvos/MRuby.framework/Headers/mruby/gc.h +0 -91
  574. data/assets/xcode/tvos/MRuby.framework/Headers/mruby/hash.h +0 -215
  575. data/assets/xcode/tvos/MRuby.framework/Headers/mruby/irep.h +0 -75
  576. data/assets/xcode/tvos/MRuby.framework/Headers/mruby/istruct.h +0 -47
  577. data/assets/xcode/tvos/MRuby.framework/Headers/mruby/khash.h +0 -274
  578. data/assets/xcode/tvos/MRuby.framework/Headers/mruby/numeric.h +0 -161
  579. data/assets/xcode/tvos/MRuby.framework/Headers/mruby/object.h +0 -44
  580. data/assets/xcode/tvos/MRuby.framework/Headers/mruby/opcode.h +0 -69
  581. data/assets/xcode/tvos/MRuby.framework/Headers/mruby/ops.h +0 -117
  582. data/assets/xcode/tvos/MRuby.framework/Headers/mruby/proc.h +0 -131
  583. data/assets/xcode/tvos/MRuby.framework/Headers/mruby/range.h +0 -49
  584. data/assets/xcode/tvos/MRuby.framework/Headers/mruby/re.h +0 -16
  585. data/assets/xcode/tvos/MRuby.framework/Headers/mruby/string.h +0 -444
  586. data/assets/xcode/tvos/MRuby.framework/Headers/mruby/throw.h +0 -55
  587. data/assets/xcode/tvos/MRuby.framework/Headers/mruby/value.h +0 -309
  588. data/assets/xcode/tvos/MRuby.framework/Headers/mruby/variable.h +0 -136
  589. data/assets/xcode/tvos/MRuby.framework/Headers/mruby/version.h +0 -110
  590. data/assets/xcode/tvos/MRuby.framework/Headers/mruby.h +0 -1282
  591. data/assets/xcode/tvos/MRuby.framework/Info.plist +0 -20
  592. data/assets/xcode/tvos/MRuby.framework/MRuby +0 -0
  593. data/assets/xcode/tvos/MyApp.xcodeproj/project.pbxproj +0 -350
  594. data/assets/xcode/tvos/MyApp.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  595. data/assets/xcode/tvos/MyApp.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
  596. data/assets/xcode/tvos/MyApp.xcodeproj/project.xcworkspace/xcshareddata/MyApp.xcscmblueprint +0 -30
  597. data/assets/xcode/tvos/main.c +0 -1
  598. data/ext/ruby2d/common.c +0 -185
  599. data/ext/ruby2d/controllers.c +0 -110
  600. data/ext/ruby2d/gl.c +0 -398
  601. data/ext/ruby2d/gl2.c +0 -86
  602. data/ext/ruby2d/gl3.c +0 -304
  603. data/ext/ruby2d/gles.c +0 -302
  604. data/ext/ruby2d/input.c +0 -48
  605. data/ext/ruby2d/music.c +0 -127
  606. data/ext/ruby2d/sound.c +0 -132
  607. data/lib/ruby2d/cli/console.rb +0 -65
  608. data/lib/ruby2d/cli/enable_console.rb +0 -7
  609. data/lib/ruby2d/cli/platform.rb +0 -17
  610. data/lib/ruby2d/music.rb +0 -77
  611. data/lib/ruby2d/pixel.rb +0 -18
  612. data/lib/ruby2d/pixmap.rb +0 -39
  613. data/lib/ruby2d/pixmap_atlas.rb +0 -56
  614. data/lib/ruby2d/sound.rb +0 -61
  615. data/lib/ruby2d/texture.rb +0 -38
  616. /data/assets/{include/SDL2 → platform/include/SDL3}/SDL_opengles2_gl2.h +0 -0
  617. /data/assets/{include/SDL2 → platform/include/SDL3}/SDL_opengles2_gl2ext.h +0 -0
  618. /data/assets/{include/SDL2 → platform/include/SDL3}/SDL_opengles2_gl2platform.h +0 -0
  619. /data/assets/{include/SDL2 → platform/include/SDL3}/SDL_opengles2_khrplatform.h +0 -0
  620. /data/assets/{include → platform/include}/mruby/re.h +0 -0
@@ -1,161 +0,0 @@
1
- /*
2
- ** mruby/numeric.h - Numeric, Integer, Float, Fixnum class
3
- **
4
- ** See Copyright Notice in mruby.h
5
- */
6
-
7
- #ifndef MRUBY_NUMERIC_H
8
- #define MRUBY_NUMERIC_H
9
-
10
- #include "common.h"
11
-
12
- /**
13
- * Numeric class and it's sub-classes.
14
- *
15
- * Integer, Float and Fixnum
16
- */
17
- MRB_BEGIN_DECL
18
-
19
- #define TYPED_POSFIXABLE(f,t) ((f) <= (t)MRB_INT_MAX)
20
- #define TYPED_NEGFIXABLE(f,t) ((f) >= (t)MRB_INT_MIN)
21
- #define TYPED_FIXABLE(f,t) (TYPED_POSFIXABLE(f,t) && TYPED_NEGFIXABLE(f,t))
22
- #define POSFIXABLE(f) TYPED_POSFIXABLE(f,mrb_int)
23
- #define NEGFIXABLE(f) TYPED_NEGFIXABLE(f,mrb_int)
24
- #define FIXABLE(f) TYPED_FIXABLE(f,mrb_int)
25
- #ifndef MRB_WITHOUT_FLOAT
26
- #define FIXABLE_FLOAT(f) TYPED_FIXABLE(f,double)
27
- #endif
28
-
29
- #ifndef MRB_WITHOUT_FLOAT
30
- MRB_API mrb_value mrb_flo_to_fixnum(mrb_state *mrb, mrb_value val);
31
- #endif
32
- MRB_API mrb_value mrb_fixnum_to_str(mrb_state *mrb, mrb_value x, mrb_int base);
33
- /* ArgumentError if format string doesn't match /%(\.[0-9]+)?[aAeEfFgG]/ */
34
- #ifndef MRB_WITHOUT_FLOAT
35
- MRB_API mrb_value mrb_float_to_str(mrb_state *mrb, mrb_value x, const char *fmt);
36
- MRB_API mrb_float mrb_to_flo(mrb_state *mrb, mrb_value x);
37
- #endif
38
-
39
- mrb_value mrb_fixnum_plus(mrb_state *mrb, mrb_value x, mrb_value y);
40
- mrb_value mrb_fixnum_minus(mrb_state *mrb, mrb_value x, mrb_value y);
41
- mrb_value mrb_fixnum_mul(mrb_state *mrb, mrb_value x, mrb_value y);
42
- mrb_value mrb_num_div(mrb_state *mrb, mrb_value x, mrb_value y);
43
-
44
- #ifndef __has_builtin
45
- #define __has_builtin(x) 0
46
- #endif
47
-
48
- #if (defined(__GNUC__) && __GNUC__ >= 5) || \
49
- (__has_builtin(__builtin_add_overflow) && \
50
- __has_builtin(__builtin_sub_overflow) && \
51
- __has_builtin(__builtin_mul_overflow))
52
- # define MRB_HAVE_TYPE_GENERIC_CHECKED_ARITHMETIC_BUILTINS
53
- #endif
54
-
55
- /*
56
- // Clang 3.8 and 3.9 have problem compiling mruby in 32-bit mode, when MRB_INT64 is set
57
- // because of missing __mulodi4 and similar functions in its runtime. We need to use custom
58
- // implementation for them.
59
- */
60
- #ifdef MRB_HAVE_TYPE_GENERIC_CHECKED_ARITHMETIC_BUILTINS
61
- #if defined(__clang__) && (__clang_major__ == 3) && (__clang_minor__ >= 8) && \
62
- defined(MRB_32BIT) && defined(MRB_INT64)
63
- #undef MRB_HAVE_TYPE_GENERIC_CHECKED_ARITHMETIC_BUILTINS
64
- #endif
65
- #endif
66
-
67
- #ifdef MRB_HAVE_TYPE_GENERIC_CHECKED_ARITHMETIC_BUILTINS
68
-
69
- #ifndef MRB_WORD_BOXING
70
- # define WBCHK(x) 0
71
- #else
72
- # define WBCHK(x) !FIXABLE(x)
73
- #endif
74
-
75
- static inline mrb_bool
76
- mrb_int_add_overflow(mrb_int augend, mrb_int addend, mrb_int *sum)
77
- {
78
- return __builtin_add_overflow(augend, addend, sum) || WBCHK(*sum);
79
- }
80
-
81
- static inline mrb_bool
82
- mrb_int_sub_overflow(mrb_int minuend, mrb_int subtrahend, mrb_int *difference)
83
- {
84
- return __builtin_sub_overflow(minuend, subtrahend, difference) || WBCHK(*difference);
85
- }
86
-
87
- static inline mrb_bool
88
- mrb_int_mul_overflow(mrb_int multiplier, mrb_int multiplicand, mrb_int *product)
89
- {
90
- return __builtin_mul_overflow(multiplier, multiplicand, product) || WBCHK(*product);
91
- }
92
-
93
- #undef WBCHK
94
-
95
- #else
96
-
97
- #define MRB_UINT_MAKE2(n) uint ## n ## _t
98
- #define MRB_UINT_MAKE(n) MRB_UINT_MAKE2(n)
99
- #define mrb_uint MRB_UINT_MAKE(MRB_INT_BIT)
100
-
101
- #define MRB_INT_OVERFLOW_MASK ((mrb_uint)1 << (MRB_INT_BIT - 1 - MRB_FIXNUM_SHIFT))
102
-
103
- static inline mrb_bool
104
- mrb_int_add_overflow(mrb_int augend, mrb_int addend, mrb_int *sum)
105
- {
106
- mrb_uint x = (mrb_uint)augend;
107
- mrb_uint y = (mrb_uint)addend;
108
- mrb_uint z = (mrb_uint)(x + y);
109
- *sum = (mrb_int)z;
110
- return !!(((x ^ z) & (y ^ z)) & MRB_INT_OVERFLOW_MASK);
111
- }
112
-
113
- static inline mrb_bool
114
- mrb_int_sub_overflow(mrb_int minuend, mrb_int subtrahend, mrb_int *difference)
115
- {
116
- mrb_uint x = (mrb_uint)minuend;
117
- mrb_uint y = (mrb_uint)subtrahend;
118
- mrb_uint z = (mrb_uint)(x - y);
119
- *difference = (mrb_int)z;
120
- return !!(((x ^ z) & (~y ^ z)) & MRB_INT_OVERFLOW_MASK);
121
- }
122
-
123
- static inline mrb_bool
124
- mrb_int_mul_overflow(mrb_int multiplier, mrb_int multiplicand, mrb_int *product)
125
- {
126
- #if MRB_INT_BIT == 32
127
- int64_t n = (int64_t)multiplier * multiplicand;
128
- *product = (mrb_int)n;
129
- return !FIXABLE(n);
130
- #else
131
- if (multiplier > 0) {
132
- if (multiplicand > 0) {
133
- if (multiplier > MRB_INT_MAX / multiplicand) return TRUE;
134
- }
135
- else {
136
- if (multiplicand < MRB_INT_MAX / multiplier) return TRUE;
137
- }
138
- }
139
- else {
140
- if (multiplicand > 0) {
141
- if (multiplier < MRB_INT_MAX / multiplicand) return TRUE;
142
- }
143
- else {
144
- if (multiplier != 0 && multiplicand < MRB_INT_MAX / multiplier) return TRUE;
145
- }
146
- }
147
- *product = multiplier * multiplicand;
148
- return FALSE;
149
- #endif
150
- }
151
-
152
- #undef MRB_INT_OVERFLOW_MASK
153
- #undef mrb_uint
154
- #undef MRB_UINT_MAKE
155
- #undef MRB_UINT_MAKE2
156
-
157
- #endif
158
-
159
- MRB_END_DECL
160
-
161
- #endif /* MRUBY_NUMERIC_H */
@@ -1,44 +0,0 @@
1
- /*
2
- ** mruby/object.h - mruby object definition
3
- **
4
- ** See Copyright Notice in mruby.h
5
- */
6
-
7
- #ifndef MRUBY_OBJECT_H
8
- #define MRUBY_OBJECT_H
9
-
10
- #define MRB_OBJECT_HEADER \
11
- enum mrb_vtype tt:8;\
12
- uint32_t color:3;\
13
- uint32_t flags:21;\
14
- struct RClass *c;\
15
- struct RBasic *gcnext
16
-
17
- #define MRB_FLAG_TEST(obj, flag) ((obj)->flags & flag)
18
-
19
-
20
- struct RBasic {
21
- MRB_OBJECT_HEADER;
22
- };
23
- #define mrb_basic_ptr(v) ((struct RBasic*)(mrb_ptr(v)))
24
-
25
- #define MRB_FL_OBJ_IS_FROZEN (1 << 20)
26
- #define MRB_FROZEN_P(o) ((o)->flags & MRB_FL_OBJ_IS_FROZEN)
27
- #define MRB_SET_FROZEN_FLAG(o) ((o)->flags |= MRB_FL_OBJ_IS_FROZEN)
28
- #define MRB_UNSET_FROZEN_FLAG(o) ((o)->flags &= ~MRB_FL_OBJ_IS_FROZEN)
29
-
30
- struct RObject {
31
- MRB_OBJECT_HEADER;
32
- struct iv_tbl *iv;
33
- };
34
- #define mrb_obj_ptr(v) ((struct RObject*)(mrb_ptr(v)))
35
-
36
- #define mrb_immediate_p(x) (mrb_type(x) < MRB_TT_HAS_BASIC)
37
- #define mrb_special_const_p(x) mrb_immediate_p(x)
38
-
39
- struct RFiber {
40
- MRB_OBJECT_HEADER;
41
- struct mrb_context *cxt;
42
- };
43
-
44
- #endif /* MRUBY_OBJECT_H */
@@ -1,69 +0,0 @@
1
- /*
2
- ** mruby/opcode.h - RiteVM operation codes
3
- **
4
- ** See Copyright Notice in mruby.h
5
- */
6
-
7
- #ifndef MRUBY_OPCODE_H
8
- #define MRUBY_OPCODE_H
9
-
10
- enum mrb_insn {
11
- #define OPCODE(x,_) OP_ ## x,
12
- #include "mruby/ops.h"
13
- #undef OPCODE
14
- };
15
-
16
- #define OP_L_STRICT 1
17
- #define OP_L_CAPTURE 2
18
- #define OP_L_METHOD OP_L_STRICT
19
- #define OP_L_LAMBDA (OP_L_STRICT|OP_L_CAPTURE)
20
- #define OP_L_BLOCK OP_L_CAPTURE
21
-
22
- #define OP_R_NORMAL 0
23
- #define OP_R_BREAK 1
24
- #define OP_R_RETURN 2
25
-
26
- #define PEEK_B(pc) (*(pc))
27
- #define PEEK_S(pc) ((pc)[0]<<8|(pc)[1])
28
- #define PEEK_W(pc) ((pc)[0]<<16|(pc)[1]<<8|(pc)[2])
29
-
30
- #define READ_B() PEEK_B(pc++)
31
- #define READ_S() (pc+=2, PEEK_S(pc-2))
32
- #define READ_W() (pc+=3, PEEK_W(pc-3))
33
-
34
- #define FETCH_Z() /* nothing */
35
- #define FETCH_B() do {a=READ_B();} while (0)
36
- #define FETCH_BB() do {a=READ_B(); b=READ_B();} while (0)
37
- #define FETCH_BBB() do {a=READ_B(); b=READ_B(); c=READ_B();} while (0)
38
- #define FETCH_BS() do {a=READ_B(); b=READ_S();} while (0)
39
- #define FETCH_S() do {a=READ_S();} while (0)
40
- #define FETCH_W() do {a=READ_W();} while (0)
41
-
42
- /* with OP_EXT1 (1st 16bit) */
43
- #define FETCH_Z_1() FETCH_Z()
44
- #define FETCH_B_1() FETCH_S()
45
- #define FETCH_BB_1() do {a=READ_S(); b=READ_B();} while (0)
46
- #define FETCH_BBB_1() do {a=READ_S(); b=READ_B(); c=READ_B();} while (0)
47
- #define FETCH_BS_1() do {a=READ_S(); b=READ_S();} while (0)
48
- #define FETCH_S_1() FETCH_S()
49
- #define FETCH_W_1() FETCH_W()
50
-
51
- /* with OP_EXT2 (2nd 16bit) */
52
- #define FETCH_Z_2() FETCH_Z()
53
- #define FETCH_B_2() FETCH_B()
54
- #define FETCH_BB_2() do {a=READ_B(); b=READ_S();} while (0)
55
- #define FETCH_BBB_2() do {a=READ_B(); b=READ_S(); c=READ_B();} while (0)
56
- #define FETCH_BS_2() FETCH_BS()
57
- #define FETCH_S_2() FETCH_S()
58
- #define FETCH_W_2() FETCH_W()
59
-
60
- /* with OP_EXT3 (1st & 2nd 16bit) */
61
- #define FETCH_Z_3() FETCH_Z()
62
- #define FETCH_B_3() FETCH_B()
63
- #define FETCH_BB_3() do {a=READ_S(); b=READ_S();} while (0)
64
- #define FETCH_BBB_3() do {a=READ_S(); b=READ_S(); c=READ_B();} while (0)
65
- #define FETCH_BS_3() do {a=READ_S(); b=READ_S();} while (0)
66
- #define FETCH_S_3() FETCH_S()
67
- #define FETCH_W_3() FETCH_W()
68
-
69
- #endif /* MRUBY_OPCODE_H */
@@ -1,117 +0,0 @@
1
- /* operand types:
2
- + Z: no operand (Z,Z,Z,Z)
3
- + B: 8bit (B,S,B,B)
4
- + BB: 8+8bit (BB,SB,BS,SS)
5
- + BBB: 8+8+8bit (BBB,SBB,BSB,SSB)
6
- + BS: 8+16bit (BS,SS,BS,BS)
7
- + S: 16bit (S,S,S,S)
8
- + W: 24bit (W,W,W,W)
9
- */
10
-
11
- /*-----------------------------------------------------------------------
12
- operation code operands semantics
13
- ------------------------------------------------------------------------*/
14
- OPCODE(NOP, Z) /* no operation */
15
- OPCODE(MOVE, BB) /* R(a) = R(b) */
16
- OPCODE(LOADL, BB) /* R(a) = Pool(b) */
17
- OPCODE(LOADI, BB) /* R(a) = mrb_int(b) */
18
- OPCODE(LOADINEG, BB) /* R(a) = mrb_int(-b) */
19
- OPCODE(LOADI__1, B) /* R(a) = mrb_int(-1) */
20
- OPCODE(LOADI_0, B) /* R(a) = mrb_int(0) */
21
- OPCODE(LOADI_1, B) /* R(a) = mrb_int(1) */
22
- OPCODE(LOADI_2, B) /* R(a) = mrb_int(2) */
23
- OPCODE(LOADI_3, B) /* R(a) = mrb_int(3) */
24
- OPCODE(LOADI_4, B) /* R(a) = mrb_int(4) */
25
- OPCODE(LOADI_5, B) /* R(a) = mrb_int(5) */
26
- OPCODE(LOADI_6, B) /* R(a) = mrb_int(6) */
27
- OPCODE(LOADI_7, B) /* R(a) = mrb_int(7) */
28
- OPCODE(LOADSYM, BB) /* R(a) = Syms(b) */
29
- OPCODE(LOADNIL, B) /* R(a) = nil */
30
- OPCODE(LOADSELF, B) /* R(a) = self */
31
- OPCODE(LOADT, B) /* R(a) = true */
32
- OPCODE(LOADF, B) /* R(a) = false */
33
- OPCODE(GETGV, BB) /* R(a) = getglobal(Syms(b)) */
34
- OPCODE(SETGV, BB) /* setglobal(Syms(b), R(a)) */
35
- OPCODE(GETSV, BB) /* R(a) = Special[Syms(b)] */
36
- OPCODE(SETSV, BB) /* Special[Syms(b)] = R(a) */
37
- OPCODE(GETIV, BB) /* R(a) = ivget(Syms(b)) */
38
- OPCODE(SETIV, BB) /* ivset(Syms(b),R(a)) */
39
- OPCODE(GETCV, BB) /* R(a) = cvget(Syms(b)) */
40
- OPCODE(SETCV, BB) /* cvset(Syms(b),R(a)) */
41
- OPCODE(GETCONST, BB) /* R(a) = constget(Syms(b)) */
42
- OPCODE(SETCONST, BB) /* constset(Syms(b),R(a)) */
43
- OPCODE(GETMCNST, BB) /* R(a) = R(a)::Syms(b) */
44
- OPCODE(SETMCNST, BB) /* R(a+1)::Syms(b) = R(a) */
45
- OPCODE(GETUPVAR, BBB) /* R(a) = uvget(b,c) */
46
- OPCODE(SETUPVAR, BBB) /* uvset(b,c,R(a)) */
47
- OPCODE(JMP, S) /* pc=a */
48
- OPCODE(JMPIF, BS) /* if R(b) pc=a */
49
- OPCODE(JMPNOT, BS) /* if !R(b) pc=a */
50
- OPCODE(JMPNIL, BS) /* if R(b)==nil pc=a */
51
- OPCODE(ONERR, S) /* rescue_push(a) */
52
- OPCODE(EXCEPT, B) /* R(a) = exc */
53
- OPCODE(RESCUE, BB) /* R(b) = R(a).isa?(R(b)) */
54
- OPCODE(POPERR, B) /* a.times{rescue_pop()} */
55
- OPCODE(RAISE, B) /* raise(R(a)) */
56
- OPCODE(EPUSH, B) /* ensure_push(SEQ[a]) */
57
- OPCODE(EPOP, B) /* A.times{ensure_pop().call} */
58
- OPCODE(SENDV, BB) /* R(a) = call(R(a),Syms(b),*R(a+1)) */
59
- OPCODE(SENDVB, BB) /* R(a) = call(R(a),Syms(b),*R(a+1),&R(a+2)) */
60
- OPCODE(SEND, BBB) /* R(a) = call(R(a),Syms(b),R(a+1),...,R(a+c)) */
61
- OPCODE(SENDB, BBB) /* R(a) = call(R(a),Syms(Bx),R(a+1),...,R(a+c),&R(a+c+1)) */
62
- OPCODE(CALL, Z) /* R(0) = self.call(frame.argc, frame.argv) */
63
- OPCODE(SUPER, BB) /* R(a) = super(R(a+1),... ,R(a+b+1)) */
64
- OPCODE(ARGARY, BS) /* R(a) = argument array (16=m5:r1:m5:d1:lv4) */
65
- OPCODE(ENTER, W) /* arg setup according to flags (23=m5:o5:r1:m5:k5:d1:b1) */
66
- OPCODE(KEY_P, BB) /* R(a) = kdict.key?(Syms(b)) # todo */
67
- OPCODE(KEYEND, Z) /* raise unless kdict.empty? # todo */
68
- OPCODE(KARG, BB) /* R(a) = kdict[Syms(b)]; kdict.delete(Syms(b)) # todo */
69
- OPCODE(RETURN, B) /* return R(a) (normal) */
70
- OPCODE(RETURN_BLK, B) /* return R(a) (in-block return) */
71
- OPCODE(BREAK, B) /* break R(a) */
72
- OPCODE(BLKPUSH, BS) /* R(a) = block (16=m5:r1:m5:d1:lv4) */
73
- OPCODE(ADD, B) /* R(a) = R(a)+R(a+1) */
74
- OPCODE(ADDI, BB) /* R(a) = R(a)+mrb_int(c) */
75
- OPCODE(SUB, B) /* R(a) = R(a)-R(a+1) */
76
- OPCODE(SUBI, BB) /* R(a) = R(a)-C */
77
- OPCODE(MUL, B) /* R(a) = R(a)*R(a+1) */
78
- OPCODE(DIV, B) /* R(a) = R(a)/R(a+1) */
79
- OPCODE(EQ, B) /* R(a) = R(a)==R(a+1) */
80
- OPCODE(LT, B) /* R(a) = R(a)<R(a+1) */
81
- OPCODE(LE, B) /* R(a) = R(a)<=R(a+1) */
82
- OPCODE(GT, B) /* R(a) = R(a)>R(a+1) */
83
- OPCODE(GE, B) /* R(a) = R(a)>=R(a+1) */
84
- OPCODE(ARRAY, BB) /* R(a) = ary_new(R(a),R(a+1)..R(a+b)) */
85
- OPCODE(ARRAY2, BBB) /* R(a) = ary_new(R(b),R(b+1)..R(b+c)) */
86
- OPCODE(ARYCAT, B) /* ary_cat(R(a),R(a+1)) */
87
- OPCODE(ARYPUSH, B) /* ary_push(R(a),R(a+1)) */
88
- OPCODE(ARYDUP, B) /* R(a) = ary_dup(R(a)) */
89
- OPCODE(AREF, BBB) /* R(a) = R(b)[c] */
90
- OPCODE(ASET, BBB) /* R(a)[c] = R(b) */
91
- OPCODE(APOST, BBB) /* *R(a),R(a+1)..R(a+C) = R(a)[b..] */
92
- OPCODE(INTERN, B) /* R(a) = intern(R(a)) */
93
- OPCODE(STRING, BB) /* R(a) = str_dup(Lit(b)) */
94
- OPCODE(STRCAT, B) /* str_cat(R(a),R(a+1)) */
95
- OPCODE(HASH, BB) /* R(a) = hash_new(R(a),R(a+1)..R(a+b)) */
96
- OPCODE(HASHADD, BB) /* R(a) = hash_push(R(a),R(a+1)..R(a+b)) */
97
- OPCODE(HASHCAT, B) /* R(a) = hash_cat(R(a),R(a+1)) */
98
- OPCODE(LAMBDA, BB) /* R(a) = lambda(SEQ[b],L_LAMBDA) */
99
- OPCODE(BLOCK, BB) /* R(a) = lambda(SEQ[b],L_BLOCK) */
100
- OPCODE(METHOD, BB) /* R(a) = lambda(SEQ[b],L_METHOD) */
101
- OPCODE(RANGE_INC, B) /* R(a) = range_new(R(a),R(a+1),FALSE) */
102
- OPCODE(RANGE_EXC, B) /* R(a) = range_new(R(a),R(a+1),TRUE) */
103
- OPCODE(OCLASS, B) /* R(a) = ::Object */
104
- OPCODE(CLASS, BB) /* R(a) = newclass(R(a),Syms(b),R(a+1)) */
105
- OPCODE(MODULE, BB) /* R(a) = newmodule(R(a),Syms(b)) */
106
- OPCODE(EXEC, BB) /* R(a) = blockexec(R(a),SEQ[b]) */
107
- OPCODE(DEF, BB) /* R(a).newmethod(Syms(b),R(a+1)) */
108
- OPCODE(ALIAS, BB) /* alias_method(target_class,Syms(a),Syms(b)) */
109
- OPCODE(UNDEF, B) /* undef_method(target_class,Syms(a)) */
110
- OPCODE(SCLASS, B) /* R(a) = R(a).singleton_class */
111
- OPCODE(TCLASS, B) /* R(a) = target_class */
112
- OPCODE(DEBUG, BBB) /* print a,b,c */
113
- OPCODE(ERR, B) /* raise(LocalJumpError, Lit(a)) */
114
- OPCODE(EXT1, Z) /* make 1st operand 16bit */
115
- OPCODE(EXT2, Z) /* make 2nd operand 16bit */
116
- OPCODE(EXT3, Z) /* make 1st and 2nd operands 16bit */
117
- OPCODE(STOP, Z) /* stop VM */
@@ -1,131 +0,0 @@
1
- /*
2
- ** mruby/proc.h - Proc class
3
- **
4
- ** See Copyright Notice in mruby.h
5
- */
6
-
7
- #ifndef MRUBY_PROC_H
8
- #define MRUBY_PROC_H
9
-
10
- #include "common.h"
11
- #include <mruby/irep.h>
12
-
13
- /**
14
- * Proc class
15
- */
16
- MRB_BEGIN_DECL
17
-
18
- struct REnv {
19
- MRB_OBJECT_HEADER;
20
- mrb_value *stack;
21
- struct mrb_context *cxt;
22
- mrb_sym mid;
23
- };
24
-
25
- /* flags (21bits): 1(shared flag):10(cioff/bidx):10(stack_len) */
26
- #define MRB_ENV_SET_STACK_LEN(e,len) (e)->flags = (((e)->flags & ~0x3ff)|((unsigned int)(len) & 0x3ff))
27
- #define MRB_ENV_STACK_LEN(e) ((mrb_int)((e)->flags & 0x3ff))
28
- #define MRB_ENV_STACK_UNSHARED (1<<20)
29
- #define MRB_ENV_UNSHARE_STACK(e) (e)->flags |= MRB_ENV_STACK_UNSHARED
30
- #define MRB_ENV_STACK_SHARED_P(e) (((e)->flags & MRB_ENV_STACK_UNSHARED) == 0)
31
- #define MRB_ENV_BIDX(e) (((e)->flags >> 10) & 0x3ff)
32
- #define MRB_ENV_SET_BIDX(e,idx) (e)->flags = (((e)->flags & ~(0x3ff<<10))|((unsigned int)(idx) & 0x3ff)<<10)
33
-
34
- void mrb_env_unshare(mrb_state*, struct REnv*);
35
-
36
- struct RProc {
37
- MRB_OBJECT_HEADER;
38
- union {
39
- mrb_irep *irep;
40
- mrb_func_t func;
41
- } body;
42
- struct RProc *upper;
43
- union {
44
- struct RClass *target_class;
45
- struct REnv *env;
46
- } e;
47
- };
48
-
49
- /* aspec access */
50
- #define MRB_ASPEC_REQ(a) (((a) >> 18) & 0x1f)
51
- #define MRB_ASPEC_OPT(a) (((a) >> 13) & 0x1f)
52
- #define MRB_ASPEC_REST(a) (((a) >> 12) & 0x1)
53
- #define MRB_ASPEC_POST(a) (((a) >> 7) & 0x1f)
54
- #define MRB_ASPEC_KEY(a) (((a) >> 2) & 0x1f)
55
- #define MRB_ASPEC_KDICT(a) ((a) & (1<<1))
56
- #define MRB_ASPEC_BLOCK(a) ((a) & 1)
57
-
58
- #define MRB_PROC_CFUNC_FL 128
59
- #define MRB_PROC_CFUNC_P(p) (((p)->flags & MRB_PROC_CFUNC_FL) != 0)
60
- #define MRB_PROC_CFUNC(p) (p)->body.func
61
- #define MRB_PROC_STRICT 256
62
- #define MRB_PROC_STRICT_P(p) (((p)->flags & MRB_PROC_STRICT) != 0)
63
- #define MRB_PROC_ORPHAN 512
64
- #define MRB_PROC_ORPHAN_P(p) (((p)->flags & MRB_PROC_ORPHAN) != 0)
65
- #define MRB_PROC_ENVSET 1024
66
- #define MRB_PROC_ENV_P(p) (((p)->flags & MRB_PROC_ENVSET) != 0)
67
- #define MRB_PROC_ENV(p) (MRB_PROC_ENV_P(p) ? (p)->e.env : NULL)
68
- #define MRB_PROC_TARGET_CLASS(p) (MRB_PROC_ENV_P(p) ? (p)->e.env->c : (p)->e.target_class)
69
- #define MRB_PROC_SET_TARGET_CLASS(p,tc) do {\
70
- if (MRB_PROC_ENV_P(p)) {\
71
- (p)->e.env->c = (tc);\
72
- mrb_field_write_barrier(mrb, (struct RBasic*)(p)->e.env, (struct RBasic*)tc);\
73
- }\
74
- else {\
75
- (p)->e.target_class = (tc);\
76
- mrb_field_write_barrier(mrb, (struct RBasic*)p, (struct RBasic*)tc);\
77
- }\
78
- } while (0)
79
- #define MRB_PROC_SCOPE 2048
80
- #define MRB_PROC_SCOPE_P(p) (((p)->flags & MRB_PROC_SCOPE) != 0)
81
-
82
- #define mrb_proc_ptr(v) ((struct RProc*)(mrb_ptr(v)))
83
-
84
- struct RProc *mrb_proc_new(mrb_state*, mrb_irep*);
85
- struct RProc *mrb_closure_new(mrb_state*, mrb_irep*);
86
- MRB_API struct RProc *mrb_proc_new_cfunc(mrb_state*, mrb_func_t);
87
- MRB_API struct RProc *mrb_closure_new_cfunc(mrb_state *mrb, mrb_func_t func, int nlocals);
88
- void mrb_proc_copy(struct RProc *a, struct RProc *b);
89
-
90
- /* implementation of #send method */
91
- mrb_value mrb_f_send(mrb_state *mrb, mrb_value self);
92
-
93
- /* following functions are defined in mruby-proc-ext so please include it when using */
94
- MRB_API struct RProc *mrb_proc_new_cfunc_with_env(mrb_state*, mrb_func_t, mrb_int, const mrb_value*);
95
- MRB_API mrb_value mrb_proc_cfunc_env_get(mrb_state*, mrb_int);
96
- /* old name */
97
- #define mrb_cfunc_env_get(mrb, idx) mrb_proc_cfunc_env_get(mrb, idx)
98
-
99
- #ifdef MRB_METHOD_TABLE_INLINE
100
-
101
- #define MRB_METHOD_FUNC_FL ((uintptr_t)1)
102
- #define MRB_METHOD_FUNC_P(m) (((uintptr_t)(m))&MRB_METHOD_FUNC_FL)
103
- #define MRB_METHOD_FUNC(m) ((mrb_func_t)((uintptr_t)(m)&(~MRB_METHOD_FUNC_FL)))
104
- #define MRB_METHOD_FROM_FUNC(m,fn) m=(mrb_method_t)((struct RProc*)((uintptr_t)(fn)|MRB_METHOD_FUNC_FL))
105
- #define MRB_METHOD_FROM_PROC(m,pr) m=(mrb_method_t)(struct RProc*)(pr)
106
- #define MRB_METHOD_PROC_P(m) (!MRB_METHOD_FUNC_P(m))
107
- #define MRB_METHOD_PROC(m) ((struct RProc*)(m))
108
- #define MRB_METHOD_UNDEF_P(m) ((m)==0)
109
-
110
- #else
111
-
112
- #define MRB_METHOD_FUNC_P(m) ((m).func_p)
113
- #define MRB_METHOD_FUNC(m) ((m).func)
114
- #define MRB_METHOD_FROM_FUNC(m,fn) do{(m).func_p=TRUE;(m).func=(fn);}while(0)
115
- #define MRB_METHOD_FROM_PROC(m,pr) do{(m).func_p=FALSE;(m).proc=(pr);}while(0)
116
- #define MRB_METHOD_PROC_P(m) (!MRB_METHOD_FUNC_P(m))
117
- #define MRB_METHOD_PROC(m) ((m).proc)
118
- #define MRB_METHOD_UNDEF_P(m) ((m).proc==NULL)
119
-
120
- #endif /* MRB_METHOD_TABLE_INLINE */
121
-
122
- #define MRB_METHOD_CFUNC_P(m) (MRB_METHOD_FUNC_P(m)?TRUE:(MRB_METHOD_PROC(m)?(MRB_PROC_CFUNC_P(MRB_METHOD_PROC(m))):FALSE))
123
- #define MRB_METHOD_CFUNC(m) (MRB_METHOD_FUNC_P(m)?MRB_METHOD_FUNC(m):((MRB_METHOD_PROC(m)&&MRB_PROC_CFUNC_P(MRB_METHOD_PROC(m)))?MRB_PROC_CFUNC(MRB_METHOD_PROC(m)):NULL))
124
-
125
-
126
- #include <mruby/khash.h>
127
- KHASH_DECLARE(mt, mrb_sym, mrb_method_t, TRUE)
128
-
129
- MRB_END_DECL
130
-
131
- #endif /* MRUBY_PROC_H */
@@ -1,49 +0,0 @@
1
- /*
2
- ** mruby/range.h - Range class
3
- **
4
- ** See Copyright Notice in mruby.h
5
- */
6
-
7
- #ifndef MRUBY_RANGE_H
8
- #define MRUBY_RANGE_H
9
-
10
- #include "common.h"
11
-
12
- /**
13
- * Range class
14
- */
15
- MRB_BEGIN_DECL
16
-
17
- typedef struct mrb_range_edges {
18
- mrb_value beg;
19
- mrb_value end;
20
- } mrb_range_edges;
21
-
22
- struct RRange {
23
- MRB_OBJECT_HEADER;
24
- mrb_range_edges *edges;
25
- mrb_bool excl : 1;
26
- };
27
-
28
- MRB_API struct RRange* mrb_range_ptr(mrb_state *mrb, mrb_value v);
29
- #define mrb_range_raw_ptr(v) ((struct RRange*)mrb_ptr(v))
30
- #define mrb_range_value(p) mrb_obj_value((void*)(p))
31
-
32
- /*
33
- * Initializes a Range.
34
- *
35
- * If the third parameter is FALSE then it includes the last value in the range.
36
- * If the third parameter is TRUE then it excludes the last value in the range.
37
- *
38
- * @param start the beginning value.
39
- * @param end the ending value.
40
- * @param exclude represents the inclusion or exclusion of the last value.
41
- */
42
- MRB_API mrb_value mrb_range_new(mrb_state *mrb, mrb_value start, mrb_value end, mrb_bool exclude);
43
-
44
- MRB_API mrb_int mrb_range_beg_len(mrb_state *mrb, mrb_value range, mrb_int *begp, mrb_int *lenp, mrb_int len, mrb_bool trunc);
45
- mrb_value mrb_get_values_at(mrb_state *mrb, mrb_value obj, mrb_int olen, mrb_int argc, const mrb_value *argv, mrb_value (*func)(mrb_state*, mrb_value, mrb_int));
46
-
47
- MRB_END_DECL
48
-
49
- #endif /* MRUBY_RANGE_H */
@@ -1,16 +0,0 @@
1
- /*
2
- ** mruby/re.h - Regexp class
3
- **
4
- ** See Copyright Notice in mruby.h
5
- */
6
-
7
- #ifndef MRUBY_RE_H
8
- #define MRUBY_RE_H
9
-
10
- MRB_BEGIN_DECL
11
-
12
- #define REGEXP_CLASS "Regexp"
13
-
14
- MRB_END_DECL
15
-
16
- #endif /* RE_H */