script_core 0.2.7 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (283) hide show
  1. checksums.yaml +4 -4
  2. data/.ruby-version +1 -1
  3. data/Gemfile +2 -2
  4. data/ext/enterprise_script_service/Rakefile +1 -1
  5. data/ext/enterprise_script_service/mruby/.github/workflows/build.yml +117 -74
  6. data/ext/enterprise_script_service/mruby/.github/workflows/codeql-analysis.yml +41 -37
  7. data/ext/enterprise_script_service/mruby/.github/workflows/lint.yml +23 -0
  8. data/ext/enterprise_script_service/mruby/.github/workflows/oss-fuzz.yml +27 -0
  9. data/ext/enterprise_script_service/mruby/.github/workflows/spell-checker.yml +17 -0
  10. data/ext/enterprise_script_service/mruby/.gitlab-ci.yml +3 -3
  11. data/ext/enterprise_script_service/mruby/.markdownlint.yml +16 -0
  12. data/ext/enterprise_script_service/mruby/.travis.yml +2 -2
  13. data/ext/enterprise_script_service/mruby/.yamllint +8 -0
  14. data/ext/enterprise_script_service/mruby/AUTHORS +3 -0
  15. data/ext/enterprise_script_service/mruby/CODEOWNERS +1 -0
  16. data/ext/enterprise_script_service/mruby/CONTRIBUTING.md +6 -13
  17. data/ext/enterprise_script_service/mruby/Doxyfile +4 -4
  18. data/ext/enterprise_script_service/mruby/LICENSE +1 -1
  19. data/ext/enterprise_script_service/mruby/Makefile +1 -1
  20. data/ext/enterprise_script_service/mruby/README.md +4 -14
  21. data/ext/enterprise_script_service/mruby/Rakefile +18 -108
  22. data/ext/enterprise_script_service/mruby/TODO.md +17 -0
  23. data/ext/enterprise_script_service/mruby/appveyor.yml +31 -25
  24. data/ext/enterprise_script_service/mruby/benchmark/bm_ao_render.rb +1 -1
  25. data/ext/enterprise_script_service/mruby/build_config.rb +9 -152
  26. data/ext/enterprise_script_service/mruby/{examples/targets/build_config_ArduinoDue.rb → build_config/ArduinoDue.rb} +2 -19
  27. data/ext/enterprise_script_service/mruby/{examples/targets/build_config_IntelEdison.rb → build_config/IntelEdison.rb} +2 -2
  28. data/ext/enterprise_script_service/mruby/{examples/targets/build_config_IntelGalileo.rb → build_config/IntelGalileo.rb} +1 -18
  29. data/ext/enterprise_script_service/mruby/{examples/targets/build_config_RX630.rb → build_config/RX630.rb} +2 -19
  30. data/ext/enterprise_script_service/mruby/build_config/android_arm64-v8a.rb +11 -0
  31. data/ext/enterprise_script_service/mruby/build_config/android_armeabi.rb +11 -0
  32. data/ext/enterprise_script_service/mruby/{examples/targets/build_config_android_armeabi_v7a_neon_hard.rb → build_config/android_armeabi_v7a_neon_hard.rb} +0 -15
  33. data/ext/enterprise_script_service/mruby/build_config/bench.rb +11 -0
  34. data/ext/enterprise_script_service/mruby/build_config/boxing.rb +21 -0
  35. data/ext/enterprise_script_service/mruby/{examples/targets/build_config_chipKITMax32.rb → build_config/chipKITMax32.rb} +2 -19
  36. data/ext/enterprise_script_service/mruby/{travis_config.rb → build_config/ci/gcc-clang.rb} +10 -10
  37. data/ext/enterprise_script_service/mruby/build_config/ci/msvc.rb +20 -0
  38. data/ext/enterprise_script_service/mruby/build_config/clang-asan.rb +11 -0
  39. data/ext/enterprise_script_service/mruby/build_config/cross-32bit.rb +14 -0
  40. data/ext/enterprise_script_service/mruby/build_config/default.rb +80 -0
  41. data/ext/enterprise_script_service/mruby/{examples/targets/build_config_dreamcast_shelf.rb → build_config/dreamcast_shelf.rb} +5 -19
  42. data/ext/enterprise_script_service/mruby/build_config/gameboyadvance.rb +73 -0
  43. data/ext/enterprise_script_service/mruby/build_config/host-cxx.rb +12 -0
  44. data/ext/enterprise_script_service/mruby/build_config/host-debug.rb +20 -0
  45. data/ext/enterprise_script_service/mruby/build_config/host-gprof.rb +14 -0
  46. data/ext/enterprise_script_service/mruby/build_config/host-m32.rb +15 -0
  47. data/ext/enterprise_script_service/mruby/build_config/host-shared.rb +36 -0
  48. data/ext/enterprise_script_service/mruby/build_config/mrbc.rb +11 -0
  49. data/ext/enterprise_script_service/mruby/build_config/no-float.rb +17 -0
  50. data/ext/enterprise_script_service/mruby/doc/guides/compile.md +138 -49
  51. data/ext/enterprise_script_service/mruby/doc/guides/debugger.md +5 -4
  52. data/ext/enterprise_script_service/mruby/doc/guides/gc-arena-howto.md +1 -1
  53. data/ext/enterprise_script_service/mruby/doc/guides/mrbconf.md +49 -22
  54. data/ext/enterprise_script_service/mruby/doc/guides/mrbgems.md +31 -14
  55. data/ext/enterprise_script_service/mruby/doc/guides/symbol.md +83 -0
  56. data/ext/enterprise_script_service/mruby/doc/limitations.md +35 -36
  57. data/ext/enterprise_script_service/mruby/doc/mruby3.md +163 -0
  58. data/ext/enterprise_script_service/mruby/doc/opcode.md +93 -107
  59. data/ext/enterprise_script_service/mruby/examples/mrbgems/c_and_ruby_extension_example/mrblib/example.rb +1 -1
  60. data/ext/enterprise_script_service/mruby/examples/mrbgems/c_and_ruby_extension_example/src/example.c +5 -1
  61. data/ext/enterprise_script_service/mruby/examples/mrbgems/c_extension_example/src/example.c +5 -1
  62. data/ext/enterprise_script_service/mruby/examples/mrbgems/ruby_extension_example/mrblib/example.rb +1 -1
  63. data/ext/enterprise_script_service/mruby/include/mrbconf.h +81 -62
  64. data/ext/enterprise_script_service/mruby/include/mruby.h +137 -96
  65. data/ext/enterprise_script_service/mruby/include/mruby/array.h +23 -6
  66. data/ext/enterprise_script_service/mruby/include/mruby/boxing_nan.h +73 -48
  67. data/ext/enterprise_script_service/mruby/include/mruby/boxing_no.h +8 -8
  68. data/ext/enterprise_script_service/mruby/include/mruby/boxing_word.h +79 -48
  69. data/ext/enterprise_script_service/mruby/include/mruby/class.h +10 -8
  70. data/ext/enterprise_script_service/mruby/include/mruby/common.h +4 -1
  71. data/ext/enterprise_script_service/mruby/include/mruby/compile.h +13 -7
  72. data/ext/enterprise_script_service/mruby/include/mruby/debug.h +2 -2
  73. data/ext/enterprise_script_service/mruby/include/mruby/dump.h +17 -35
  74. data/ext/enterprise_script_service/mruby/include/mruby/endian.h +44 -0
  75. data/ext/enterprise_script_service/mruby/include/mruby/error.h +39 -5
  76. data/ext/enterprise_script_service/mruby/include/mruby/gc.h +1 -0
  77. data/ext/enterprise_script_service/mruby/include/mruby/hash.h +33 -13
  78. data/ext/enterprise_script_service/mruby/include/mruby/irep.h +64 -14
  79. data/ext/enterprise_script_service/mruby/include/mruby/khash.h +6 -14
  80. data/ext/enterprise_script_service/mruby/include/mruby/numeric.h +36 -63
  81. data/ext/enterprise_script_service/mruby/include/mruby/opcode.h +1 -27
  82. data/ext/enterprise_script_service/mruby/include/mruby/ops.h +27 -23
  83. data/ext/enterprise_script_service/mruby/include/mruby/presym.h +40 -0
  84. data/ext/enterprise_script_service/mruby/include/mruby/presym/disable.h +70 -0
  85. data/ext/enterprise_script_service/mruby/include/mruby/presym/enable.h +37 -0
  86. data/ext/enterprise_script_service/mruby/include/mruby/presym/scanning.h +73 -0
  87. data/ext/enterprise_script_service/mruby/include/mruby/proc.h +80 -13
  88. data/ext/enterprise_script_service/mruby/include/mruby/string.h +10 -15
  89. data/ext/enterprise_script_service/mruby/include/mruby/throw.h +14 -3
  90. data/ext/enterprise_script_service/mruby/include/mruby/value.h +29 -19
  91. data/ext/enterprise_script_service/mruby/include/mruby/variable.h +1 -0
  92. data/ext/enterprise_script_service/mruby/include/mruby/version.h +26 -7
  93. data/ext/enterprise_script_service/mruby/lib/mruby/build.rb +198 -44
  94. data/ext/enterprise_script_service/mruby/lib/mruby/build/command.rb +55 -37
  95. data/ext/enterprise_script_service/mruby/lib/mruby/build/load_gems.rb +12 -10
  96. data/ext/enterprise_script_service/mruby/lib/{mruby-core-ext.rb → mruby/core_ext.rb} +10 -3
  97. data/ext/enterprise_script_service/mruby/lib/mruby/gem.rb +75 -32
  98. data/ext/enterprise_script_service/mruby/lib/mruby/lockfile.rb +1 -1
  99. data/ext/enterprise_script_service/mruby/lib/mruby/presym.rb +132 -0
  100. data/ext/enterprise_script_service/mruby/mrbgems/default-no-fpu.gembox +3 -0
  101. data/ext/enterprise_script_service/mruby/mrbgems/default-no-stdio.gembox +4 -0
  102. data/ext/enterprise_script_service/mruby/mrbgems/default.gembox +9 -88
  103. data/ext/enterprise_script_service/mruby/mrbgems/full-core.gembox +1 -4
  104. data/ext/enterprise_script_service/mruby/mrbgems/math.gembox +10 -0
  105. data/ext/enterprise_script_service/mruby/mrbgems/metaprog.gembox +15 -0
  106. data/ext/enterprise_script_service/mruby/mrbgems/mruby-array-ext/mrblib/array.rb +1 -1
  107. data/ext/enterprise_script_service/mruby/mrbgems/mruby-array-ext/src/array.c +5 -4
  108. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-config/mrbgem.rake +28 -19
  109. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-config/mruby-config +18 -8
  110. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-debugger/bintest/mrdb.rb +3 -6
  111. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-debugger/bintest/print.rb +10 -10
  112. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/apibreak.c +14 -9
  113. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/apiprint.c +3 -2
  114. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/mrdb.c +4 -3
  115. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/mrdb.h +2 -6
  116. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/mrdbconf.h +4 -4
  117. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-mirb/bintest/mirb.rb +23 -5
  118. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-mirb/mrbgem.rake +11 -2
  119. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-mirb/tools/mirb/mirb.c +41 -34
  120. data/ext/enterprise_script_service/mruby/mrbgems/{mruby-compiler → mruby-bin-mrbc}/bintest/mrbc.rb +0 -0
  121. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-mrbc/mrbgem.rake +3 -4
  122. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-mrbc/tools/mrbc/mrbc.c +19 -9
  123. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-mruby/bintest/mruby.rb +25 -4
  124. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-mruby/mrbgem.rake +1 -1
  125. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-mruby/tools/mruby/mruby.c +22 -6
  126. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-strip/bintest/mruby-strip.rb +1 -1
  127. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-strip/tools/mruby-strip/mruby-strip.c +2 -2
  128. data/ext/enterprise_script_service/mruby/mrbgems/mruby-catch/mrbgem.rake +5 -0
  129. data/ext/enterprise_script_service/mruby/mrbgems/mruby-catch/mrblib/catch.rb +27 -0
  130. data/ext/enterprise_script_service/mruby/mrbgems/mruby-class-ext/src/class.c +2 -1
  131. data/ext/enterprise_script_service/mruby/mrbgems/mruby-compiler/core/codegen.c +430 -399
  132. data/ext/enterprise_script_service/mruby/mrbgems/mruby-compiler/core/keywords +5 -0
  133. data/ext/enterprise_script_service/mruby/mrbgems/mruby-compiler/core/lex.def +49 -44
  134. data/ext/enterprise_script_service/mruby/mrbgems/mruby-compiler/core/parse.y +559 -217
  135. data/ext/enterprise_script_service/mruby/mrbgems/mruby-compiler/core/y.tab.c +4774 -4193
  136. data/ext/enterprise_script_service/mruby/mrbgems/mruby-compiler/mrbgem.rake +18 -19
  137. data/ext/enterprise_script_service/mruby/mrbgems/mruby-complex/mrblib/complex.rb +1 -1
  138. data/ext/enterprise_script_service/mruby/mrbgems/mruby-complex/src/complex.c +8 -7
  139. data/ext/enterprise_script_service/mruby/mrbgems/mruby-complex/test/complex.rb +4 -4
  140. data/ext/enterprise_script_service/mruby/mrbgems/mruby-enumerator/mrblib/enumerator.rb +1 -0
  141. data/ext/enterprise_script_service/mruby/mrbgems/mruby-enumerator/test/enumerator.rb +2 -2
  142. data/ext/enterprise_script_service/mruby/mrbgems/mruby-error/mrbgem.rake +2 -2
  143. data/ext/enterprise_script_service/mruby/mrbgems/mruby-eval/src/eval.c +17 -25
  144. data/ext/enterprise_script_service/mruby/mrbgems/mruby-fiber/src/fiber.c +18 -13
  145. data/ext/enterprise_script_service/mruby/mrbgems/mruby-hash-ext/src/hash-ext.c +30 -2
  146. data/ext/enterprise_script_service/mruby/mrbgems/mruby-hash-ext/test/hash.rb +7 -0
  147. data/ext/enterprise_script_service/mruby/mrbgems/mruby-inline-struct/test/inline.c +2 -2
  148. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/README.md +18 -16
  149. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/include/mruby/ext/io.h +2 -2
  150. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/mrblib/file.rb +9 -4
  151. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/mrblib/io.rb +2 -2
  152. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/src/file.c +55 -52
  153. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/src/file_test.c +4 -2
  154. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/src/io.c +99 -87
  155. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/test/file.rb +2 -0
  156. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/test/io.rb +2 -3
  157. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/test/mruby_io_test.c +1 -1
  158. data/ext/enterprise_script_service/mruby/mrbgems/mruby-kernel-ext/src/kernel.c +7 -6
  159. data/ext/enterprise_script_service/mruby/mrbgems/mruby-math/src/math.c +13 -12
  160. data/ext/enterprise_script_service/mruby/mrbgems/mruby-math/test/math.rb +5 -4
  161. data/ext/enterprise_script_service/mruby/mrbgems/mruby-metaprog/src/metaprog.c +43 -58
  162. data/ext/enterprise_script_service/mruby/mrbgems/mruby-metaprog/test/metaprog.rb +4 -4
  163. data/ext/enterprise_script_service/mruby/mrbgems/mruby-method/README.md +4 -3
  164. data/ext/enterprise_script_service/mruby/mrbgems/mruby-method/src/method.c +77 -74
  165. data/ext/enterprise_script_service/mruby/mrbgems/mruby-method/test/method.rb +4 -4
  166. data/ext/enterprise_script_service/mruby/mrbgems/mruby-numeric-ext/src/numeric_ext.c +14 -13
  167. data/ext/enterprise_script_service/mruby/mrbgems/mruby-object-ext/src/object.c +5 -4
  168. data/ext/enterprise_script_service/mruby/mrbgems/mruby-objectspace/src/mruby_objectspace.c +18 -12
  169. data/ext/enterprise_script_service/mruby/mrbgems/mruby-os-memsize/mrbgem.rake +10 -0
  170. data/ext/enterprise_script_service/mruby/mrbgems/mruby-os-memsize/src/memsize.c +231 -0
  171. data/ext/enterprise_script_service/mruby/mrbgems/mruby-os-memsize/test/memsize.rb +63 -0
  172. data/ext/enterprise_script_service/mruby/mrbgems/mruby-pack/README.md +15 -18
  173. data/ext/enterprise_script_service/mruby/mrbgems/mruby-pack/src/pack.c +38 -88
  174. data/ext/enterprise_script_service/mruby/mrbgems/mruby-print/mrblib/print.rb +1 -30
  175. data/ext/enterprise_script_service/mruby/mrbgems/mruby-print/src/print.c +62 -26
  176. data/ext/enterprise_script_service/mruby/mrbgems/mruby-proc-ext/src/proc.c +32 -19
  177. data/ext/enterprise_script_service/mruby/mrbgems/mruby-proc-ext/test/proc.c +1 -1
  178. data/ext/enterprise_script_service/mruby/mrbgems/mruby-random/src/random.c +98 -43
  179. data/ext/enterprise_script_service/mruby/mrbgems/mruby-random/test/random.rb +2 -2
  180. data/ext/enterprise_script_service/mruby/mrbgems/mruby-range-ext/mrblib/range.rb +39 -6
  181. data/ext/enterprise_script_service/mruby/mrbgems/mruby-range-ext/src/range.c +20 -40
  182. data/ext/enterprise_script_service/mruby/mrbgems/mruby-range-ext/test/range.rb +27 -3
  183. data/ext/enterprise_script_service/mruby/mrbgems/mruby-rational/mrblib/rational.rb +11 -17
  184. data/ext/enterprise_script_service/mruby/mrbgems/mruby-rational/src/rational.c +216 -38
  185. data/ext/enterprise_script_service/mruby/mrbgems/mruby-rational/test/rational.rb +6 -6
  186. data/ext/enterprise_script_service/mruby/mrbgems/mruby-sleep/README.md +6 -4
  187. data/ext/enterprise_script_service/mruby/mrbgems/mruby-sleep/src/mrb_sleep.c +4 -4
  188. data/ext/enterprise_script_service/mruby/mrbgems/mruby-socket/README.md +3 -2
  189. data/ext/enterprise_script_service/mruby/mrbgems/mruby-socket/src/socket.c +47 -45
  190. data/ext/enterprise_script_service/mruby/mrbgems/mruby-sprintf/src/sprintf.c +102 -71
  191. data/ext/enterprise_script_service/mruby/mrbgems/mruby-sprintf/test/sprintf.rb +4 -2
  192. data/ext/enterprise_script_service/mruby/mrbgems/mruby-string-ext/mrblib/string.rb +23 -1
  193. data/ext/enterprise_script_service/mruby/mrbgems/mruby-string-ext/src/string.c +13 -9
  194. data/ext/enterprise_script_service/mruby/mrbgems/mruby-struct/mrblib/struct.rb +1 -1
  195. data/ext/enterprise_script_service/mruby/mrbgems/mruby-struct/src/struct.c +18 -25
  196. data/ext/enterprise_script_service/mruby/mrbgems/mruby-symbol-ext/src/symbol.c +6 -5
  197. data/ext/enterprise_script_service/mruby/mrbgems/mruby-symbol-ext/test/symbol.rb +1 -1
  198. data/ext/enterprise_script_service/mruby/mrbgems/mruby-test/README.md +0 -1
  199. data/ext/enterprise_script_service/mruby/mrbgems/mruby-test/driver.c +5 -5
  200. data/ext/enterprise_script_service/mruby/mrbgems/mruby-test/mrbgem.rake +16 -44
  201. data/ext/enterprise_script_service/mruby/mrbgems/mruby-test/vformat.c +4 -4
  202. data/ext/enterprise_script_service/mruby/mrbgems/mruby-time/src/time.c +27 -27
  203. data/ext/enterprise_script_service/mruby/mrbgems/stdlib-ext.gembox +18 -0
  204. data/ext/enterprise_script_service/mruby/mrbgems/stdlib-io.gembox +12 -0
  205. data/ext/enterprise_script_service/mruby/mrbgems/stdlib.gembox +54 -0
  206. data/ext/enterprise_script_service/mruby/mrblib/10error.rb +4 -0
  207. data/ext/enterprise_script_service/mruby/mrblib/array.rb +17 -9
  208. data/ext/enterprise_script_service/mruby/mrblib/enum.rb +1 -1
  209. data/ext/enterprise_script_service/mruby/mrblib/hash.rb +0 -20
  210. data/ext/enterprise_script_service/mruby/mrblib/init_mrblib.c +0 -11
  211. data/ext/enterprise_script_service/mruby/mrblib/numeric.rb +36 -11
  212. data/ext/enterprise_script_service/mruby/mrblib/range.rb +25 -3
  213. data/ext/enterprise_script_service/mruby/oss-fuzz/mruby_proto_fuzzer.cpp +2 -2
  214. data/ext/enterprise_script_service/mruby/oss-fuzz/proto_to_ruby.h +1 -1
  215. data/ext/enterprise_script_service/mruby/src/array.c +43 -80
  216. data/ext/enterprise_script_service/mruby/src/backtrace.c +16 -17
  217. data/ext/enterprise_script_service/mruby/src/class.c +774 -182
  218. data/ext/enterprise_script_service/mruby/src/codedump.c +223 -198
  219. data/ext/enterprise_script_service/mruby/src/debug.c +6 -6
  220. data/ext/enterprise_script_service/mruby/src/dump.c +466 -141
  221. data/ext/enterprise_script_service/mruby/src/enum.c +1 -1
  222. data/ext/enterprise_script_service/mruby/src/error.c +36 -13
  223. data/ext/enterprise_script_service/mruby/src/etc.c +43 -34
  224. data/ext/enterprise_script_service/mruby/src/fmt_fp.c +5 -6
  225. data/ext/enterprise_script_service/mruby/src/gc.c +73 -71
  226. data/ext/enterprise_script_service/mruby/src/hash.c +1050 -707
  227. data/ext/enterprise_script_service/mruby/src/kernel.c +75 -220
  228. data/ext/enterprise_script_service/mruby/src/load.c +196 -166
  229. data/ext/enterprise_script_service/mruby/src/numeric.c +352 -314
  230. data/ext/enterprise_script_service/mruby/src/object.c +97 -90
  231. data/ext/enterprise_script_service/mruby/src/print.c +4 -3
  232. data/ext/enterprise_script_service/mruby/src/proc.c +48 -56
  233. data/ext/enterprise_script_service/mruby/src/range.c +45 -21
  234. data/ext/enterprise_script_service/mruby/src/state.c +25 -32
  235. data/ext/enterprise_script_service/mruby/src/string.c +59 -101
  236. data/ext/enterprise_script_service/mruby/src/symbol.c +121 -56
  237. data/ext/enterprise_script_service/mruby/src/value_array.h +1 -0
  238. data/ext/enterprise_script_service/mruby/src/variable.c +158 -158
  239. data/ext/enterprise_script_service/mruby/src/vm.c +617 -602
  240. data/ext/enterprise_script_service/mruby/tasks/benchmark.rake +6 -6
  241. data/ext/enterprise_script_service/mruby/tasks/bin.rake +23 -0
  242. data/ext/enterprise_script_service/mruby/tasks/core.rake +12 -0
  243. data/ext/enterprise_script_service/mruby/tasks/doc.rake +50 -38
  244. data/ext/enterprise_script_service/mruby/tasks/gitlab.rake +83 -77
  245. data/ext/enterprise_script_service/mruby/tasks/libmruby.rake +10 -1
  246. data/ext/enterprise_script_service/mruby/tasks/mrbgems.rake +13 -1
  247. data/ext/enterprise_script_service/mruby/tasks/mrblib.rake +40 -0
  248. data/ext/enterprise_script_service/mruby/tasks/presym.rake +44 -0
  249. data/ext/enterprise_script_service/mruby/tasks/test.rake +68 -0
  250. data/ext/enterprise_script_service/mruby/tasks/toolchains/gcc.rake +6 -5
  251. data/ext/enterprise_script_service/mruby/tasks/toolchains/openwrt.rake +10 -14
  252. data/ext/enterprise_script_service/mruby/tasks/toolchains/visualcpp.rake +17 -21
  253. data/ext/enterprise_script_service/mruby/test/bintest.rb +5 -5
  254. data/ext/enterprise_script_service/mruby/test/t/argumenterror.rb +16 -0
  255. data/ext/enterprise_script_service/mruby/test/t/array.rb +7 -3
  256. data/ext/enterprise_script_service/mruby/test/t/bs_literal.rb +1 -1
  257. data/ext/enterprise_script_service/mruby/test/t/float.rb +18 -8
  258. data/ext/enterprise_script_service/mruby/test/t/hash.rb +903 -281
  259. data/ext/enterprise_script_service/mruby/test/t/integer.rb +10 -38
  260. data/ext/enterprise_script_service/mruby/test/t/kernel.rb +1 -1
  261. data/ext/enterprise_script_service/mruby/test/t/literals.rb +50 -0
  262. data/ext/enterprise_script_service/mruby/test/t/module.rb +2 -2
  263. data/ext/enterprise_script_service/mruby/test/t/numeric.rb +1 -1
  264. data/ext/enterprise_script_service/mruby/test/t/range.rb +83 -1
  265. data/ext/enterprise_script_service/mruby/test/t/string.rb +4 -0
  266. data/ext/enterprise_script_service/mruby/test/t/superclass.rb +10 -10
  267. data/ext/enterprise_script_service/mruby/test/t/syntax.rb +24 -0
  268. data/ext/enterprise_script_service/mruby/test/t/vformat.rb +3 -3
  269. data/ext/enterprise_script_service/mruby_config.rb +2 -5
  270. data/ext/enterprise_script_service/mruby_engine.cpp +1 -1
  271. data/lib/script_core/version.rb +1 -1
  272. data/spec/script_core_spec.rb +13 -0
  273. metadata +61 -23
  274. data/ext/enterprise_script_service/mruby/.github/workflows/main.yml +0 -24
  275. data/ext/enterprise_script_service/mruby/TODO +0 -8
  276. data/ext/enterprise_script_service/mruby/appveyor_config.rb +0 -46
  277. data/ext/enterprise_script_service/mruby/benchmark/build_config_boxing.rb +0 -28
  278. data/ext/enterprise_script_service/mruby/examples/targets/build_config_android_arm64-v8a.rb +0 -26
  279. data/ext/enterprise_script_service/mruby/examples/targets/build_config_android_armeabi.rb +0 -26
  280. data/ext/enterprise_script_service/mruby/mrbgems/mruby-sprintf/src/kernel.c +0 -30
  281. data/ext/enterprise_script_service/mruby/mrblib/mrblib.rake +0 -18
  282. data/ext/enterprise_script_service/mruby/src/crc.c +0 -39
  283. data/ext/enterprise_script_service/mruby/src/mruby_core.rake +0 -19
@@ -1,21 +1,5 @@
1
- MRuby::Build.new do |conf|
2
-
3
- # Gets set by the VS command prompts.
4
- if ENV['VisualStudioVersion'] || ENV['VSINSTALLDIR']
5
- toolchain :visualcpp
6
- else
7
- toolchain :gcc
8
- end
9
-
10
- enable_debug
11
-
12
- # include the default GEMs
13
- conf.gembox 'default'
14
-
15
- end
16
-
17
1
  # Cross Compiling configuration for Arduino Due
18
- # http://arduino.cc/en/Main/ArduinoBoardDue
2
+ # https://arduino.cc/en/Main/ArduinoBoardDue
19
3
  #
20
4
  # Requires Arduino IDE >= 1.5
21
5
  MRuby::CrossBuild.new("ArduinoDue") do |conf|
@@ -47,9 +31,8 @@
47
31
  #configuration for low memory environment
48
32
  cc.defines << %w(MRB_HEAP_PAGE_SIZE=64)
49
33
  cc.defines << %w(KHASH_DEFAULT_SIZE=8)
50
- cc.defines << %w(MRB_STR_BUF_MIN_SIZE=20)
51
34
  cc.defines << %w(MRB_GC_STRESS)
52
- #cc.defines << %w(MRB_DISABLE_STDIO) #if you dont need stdio.
35
+ #cc.defines << %w(MRB_NO_STDIO) #if you dont need stdio.
53
36
  #cc.defines << %w(POOL_PAGE_SIZE=1000) #effective only for use with mruby-eval
54
37
  end
55
38
 
@@ -5,7 +5,7 @@
5
5
  MRuby::Build.new do |conf|
6
6
  toolchain :gcc
7
7
  conf.gembox 'default'
8
- conf.cc.defines = %w(ENABLE_READLINE)
8
+ conf.cc.defines = %w(MRB_USE_READLINE)
9
9
  conf.gembox 'default'
10
10
 
11
11
  #lightweight regular expression
@@ -33,7 +33,7 @@
33
33
  cc.flags << %w(-O2 -pipe -g -feliminate-unused-debug-types)
34
34
  cc.flags << "--sysroot=#{POKY_EDISON_SYSROOT}"
35
35
  cc.compile_options = %Q[%{flags} -o "%{outfile}" -c "%{infile}"]
36
- cc.defines = %w(ENABLE_READLINE)
36
+ cc.defines = %w(MRB_USE_READLINE)
37
37
  end
38
38
 
39
39
  conf.cxx do |cxx|
@@ -1,22 +1,5 @@
1
- MRuby::Build.new do |conf|
2
-
3
- # Gets set by the VS command prompts.
4
- if ENV['VisualStudioVersion'] || ENV['VSINSTALLDIR']
5
- toolchain :visualcpp
6
- else
7
- toolchain :gcc
8
- end
9
-
10
- enable_debug
11
-
12
- # include the default GEMs
13
- conf.gembox 'default'
14
-
15
- end
16
-
17
-
18
1
  # Cross Compiling configuration for Intel Galileo on Arduino environment
19
- # http://arduino.cc/en/ArduinoCertified/IntelGalileo
2
+ # https://arduino.cc/en/ArduinoCertified/IntelGalileo
20
3
  #
21
4
  # Requires Arduino IDE for Intel Galileo
22
5
  MRuby::CrossBuild.new("Galileo") do |conf|
@@ -1,19 +1,3 @@
1
- MRuby::Build.new do |conf|
2
-
3
- # Gets set by the VS command prompts.
4
- if ENV['VisualStudioVersion'] || ENV['VSINSTALLDIR']
5
- toolchain :visualcpp
6
- else
7
- toolchain :gcc
8
- end
9
-
10
- enable_debug
11
-
12
- # include the default GEMs
13
- conf.gembox 'default'
14
-
15
- end
16
-
17
1
  # Cross Compiling configuration for RX630
18
2
  # http://gadget.renesas.com/
19
3
  #
@@ -30,12 +14,11 @@
30
14
  cc.compile_options = %Q[%{flags} -o "%{outfile}" -c "%{infile}"]
31
15
 
32
16
  #configuration for low memory environment
33
- cc.defines << %w(MRB_USE_FLOAT)
17
+ cc.defines << %w(MRB_USE_FLOAT32)
34
18
  cc.defines << %w(MRB_HEAP_PAGE_SIZE=64)
35
19
  cc.defines << %w(KHASH_DEFAULT_SIZE=8)
36
- cc.defines << %w(MRB_STR_BUF_MIN_SIZE=20)
37
20
  cc.defines << %w(MRB_GC_STRESS)
38
- cc.defines << %w(MRB_DISABLE_STDIO) #if you dont need stdio.
21
+ cc.defines << %w(MRB_NO_STDIO) #if you dont need stdio.
39
22
  #cc.defines << %w(POOL_PAGE_SIZE=1000) #effective only for use with mruby-eval
40
23
  end
41
24
 
@@ -0,0 +1,11 @@
1
+ # Requires Android NDK r13 or later.
2
+ MRuby::CrossBuild.new('android-arm64-v8a') do |conf|
3
+ params = {
4
+ :arch => 'arm64-v8a',
5
+ :platform => 'android-24',
6
+ :toolchain => :clang,
7
+ }
8
+ toolchain :android, params
9
+
10
+ conf.gembox 'default'
11
+ end
@@ -0,0 +1,11 @@
1
+ # Requires Android NDK r13 or later.
2
+ MRuby::CrossBuild.new('android-armeabi') do |conf|
3
+ params = {
4
+ :arch => 'armeabi',
5
+ :platform => 'android-24',
6
+ :toolchain => :clang,
7
+ }
8
+ toolchain :android, params
9
+
10
+ conf.gembox 'default'
11
+ end
@@ -1,18 +1,3 @@
1
- MRuby::Build.new do |conf|
2
-
3
- # Gets set by the VS command prompts.
4
- if ENV['VisualStudioVersion'] || ENV['VSINSTALLDIR']
5
- toolchain :visualcpp
6
- else
7
- toolchain :gcc
8
- end
9
-
10
- enable_debug
11
-
12
- # include the default GEMs
13
- conf.gembox 'default'
14
- end
15
-
16
1
  # Requires Android NDK r13 or later.
17
2
  MRuby::CrossBuild.new('android-armeabi-v7a-neon-hard') do |conf|
18
3
  params = {
@@ -0,0 +1,11 @@
1
+ MRuby::Build.new('bench') do |conf|
2
+ # Gets set by the VS command prompts.
3
+ if ENV['VisualStudioVersion'] || ENV['VSINSTALLDIR']
4
+ toolchain :visualcpp
5
+ else
6
+ toolchain :gcc
7
+ conf.cc.flags << '-O3'
8
+ end
9
+
10
+ conf.gembox 'default'
11
+ end
@@ -0,0 +1,21 @@
1
+ boxings = %w[no word nan]
2
+ bits = [64, 32]
3
+ ints = [64, 32]
4
+
5
+ boxings.product(bits, ints) do |boxing, bit, int|
6
+ next if boxing == "nan" && int == 64
7
+
8
+ MRuby::Build.new("boxing-#{boxing}-m#{bit}-i#{int}") do |conf|
9
+ conf.toolchain :gcc
10
+ conf.gembox 'default'
11
+ conf.compilers.each do |c|
12
+ c.defines << "MRB_#{boxing.upcase}_BOXING"
13
+ c.defines << "MRB_INT#{int}"
14
+ c.flags << "-m#{bit}"
15
+ end
16
+ conf.linker.flags << "-m#{bit}"
17
+ conf.enable_debug
18
+ conf.enable_test
19
+ conf.enable_bintest
20
+ end
21
+ end
@@ -1,21 +1,5 @@
1
- MRuby::Build.new do |conf|
2
-
3
- # Gets set by the VS command prompts.
4
- if ENV['VisualStudioVersion'] || ENV['VSINSTALLDIR']
5
- toolchain :visualcpp
6
- else
7
- toolchain :gcc
8
- end
9
-
10
- enable_debug
11
-
12
- # include the default GEMs
13
- conf.gembox 'default'
14
-
15
- end
16
-
17
1
  # Cross Compiling configuration for Digilent chipKIT Max32
18
- # http://www.digilentinc.com/Products/Detail.cfm?Prod=CHIPKIT-MAX32
2
+ # https://www.digilentinc.com/Products/Detail.cfm?Prod=CHIPKIT-MAX32
19
3
  #
20
4
  # Requires MPIDE (https://github.com/chipKIT32/chipKIT32-MAX)
21
5
  #
@@ -44,9 +28,8 @@
44
28
  #configuration for low memory environment
45
29
  cc.defines << %w(MRB_HEAP_PAGE_SIZE=64)
46
30
  cc.defines << %w(KHASH_DEFAULT_SIZE=8)
47
- cc.defines << %w(MRB_STR_BUF_MIN_SIZE=20)
48
31
  cc.defines << %w(MRB_GC_STRESS)
49
- #cc.defines << %w(MRB_DISABLE_STDIO) #if you dont need stdio.
32
+ #cc.defines << %w(MRB_NO_STDIO) #if you dont need stdio.
50
33
  #cc.defines << %w(POOL_PAGE_SIZE=1000) #effective only for use with mruby-eval
51
34
  end
52
35
 
@@ -1,21 +1,22 @@
1
+ STDOUT.sync = STDERR.sync = true unless Rake.application.options.always_multitask
2
+
1
3
  MRuby::Build.new('full-debug') do |conf|
2
- toolchain :gcc
3
- enable_debug
4
+ conf.toolchain
5
+ conf.enable_debug
4
6
 
5
7
  # include all core GEMs
6
8
  conf.gembox 'full-core'
7
- conf.cc.flags += %w(-Werror=declaration-after-statement)
8
- conf.cc.defines += %w(MRB_GC_STRESS MRB_METHOD_CACHE MRB_ENABLE_DEBUG_HOOK)
9
+ conf.cc.defines += %w(MRB_GC_STRESS MRB_USE_DEBUG_HOOK)
9
10
 
10
11
  conf.enable_test
11
12
  end
12
13
 
13
14
  MRuby::Build.new do |conf|
14
- toolchain :gcc
15
+ conf.toolchain
15
16
 
16
17
  # include all core GEMs
17
18
  conf.gembox 'full-core'
18
- conf.cc.flags += %w(-Werror=declaration-after-statement)
19
+ conf.gem :core => 'mruby-bin-debugger'
19
20
  conf.compilers.each do |c|
20
21
  c.defines += %w(MRB_GC_FIXED_ARENA)
21
22
  end
@@ -24,17 +25,16 @@
24
25
  end
25
26
 
26
27
  MRuby::Build.new('cxx_abi') do |conf|
27
- toolchain :gcc
28
+ conf.toolchain
28
29
 
29
30
  conf.gembox 'full-core'
30
31
  conf.cc.flags += %w(-fpermissive)
31
32
  conf.compilers.each do |c|
32
33
  c.defines += %w(MRB_GC_FIXED_ARENA)
33
34
  end
34
- conf.enable_bintest
35
35
  conf.enable_test
36
36
 
37
- enable_cxx_abi
37
+ conf.enable_cxx_abi
38
38
 
39
- build_mrbc_exec
39
+ conf.build_mrbc_exec
40
40
  end
@@ -0,0 +1,20 @@
1
+ STDOUT.sync = STDERR.sync = true unless Rake.application.options.always_multitask
2
+
3
+ def setup_option(conf)
4
+ conf.cc.compile_options.sub!(%r{/Zi }, "") unless ENV['CFLAGS']
5
+ conf.cxx.compile_options.sub!(%r{/Zi }, "") unless ENV['CFLAGS'] || ENV['CXXFLAGS']
6
+ conf.linker.flags << "/DEBUG:NONE" unless ENV['LDFLAGS']
7
+ end
8
+
9
+ MRuby::Build.new do |conf|
10
+ conf.toolchain :visualcpp
11
+
12
+ # include all core GEMs
13
+ conf.gembox 'full-core'
14
+ conf.compilers.each do |c|
15
+ c.defines += %w(MRB_GC_FIXED_ARENA)
16
+ end
17
+ setup_option(conf)
18
+ conf.enable_bintest
19
+ conf.enable_test
20
+ end
@@ -0,0 +1,11 @@
1
+ MRuby::Build.new do |conf|
2
+ conf.toolchain :clang
3
+ # include the GEM box
4
+ conf.gembox 'default'
5
+
6
+ # Turn on `enable_debug` for better debugging
7
+ conf.enable_sanitizer "address,undefined"
8
+ conf.enable_debug
9
+ conf.enable_bintest
10
+ conf.enable_test
11
+ end
@@ -0,0 +1,14 @@
1
+ # Define cross build settings
2
+ MRuby::CrossBuild.new('cross-32bit') do |conf|
3
+ conf.toolchain :gcc
4
+
5
+ conf.cc.flags << "-m32"
6
+ conf.linker.flags << "-m32"
7
+
8
+ # conf.build_mrbtest_lib_only
9
+
10
+ conf.gem :core => "mruby-bin-mruby"
11
+ conf.gem "#{MRUBY_ROOT}/examples/mrbgems/c_and_ruby_extension_example"
12
+
13
+ conf.test_runner.command = 'env'
14
+ end
@@ -0,0 +1,80 @@
1
+ MRuby::Build.new do |conf|
2
+ # load specific toolchain settings
3
+ conf.toolchain
4
+
5
+ # Use mrbgems
6
+ # conf.gem 'examples/mrbgems/ruby_extension_example'
7
+ # conf.gem 'examples/mrbgems/c_extension_example' do |g|
8
+ # g.cc.flags << '-g' # append cflags in this gem
9
+ # end
10
+ # conf.gem 'examples/mrbgems/c_and_ruby_extension_example'
11
+ # conf.gem :core => 'mruby-eval'
12
+ # conf.gem :mgem => 'mruby-onig-regexp'
13
+ # conf.gem :github => 'mattn/mruby-onig-regexp'
14
+ # conf.gem :git => 'git@github.com:mattn/mruby-onig-regexp.git', :branch => 'master', :options => '-v'
15
+
16
+ # include the GEM box
17
+ conf.gembox 'default'
18
+
19
+ # C compiler settings
20
+ # conf.cc do |cc|
21
+ # cc.command = ENV['CC'] || 'gcc'
22
+ # cc.flags = [ENV['CFLAGS'] || %w()]
23
+ # cc.include_paths = ["#{root}/include"]
24
+ # cc.defines = %w()
25
+ # cc.option_include_path = %q[-I"%s"]
26
+ # cc.option_define = '-D%s'
27
+ # cc.compile_options = %Q[%{flags} -MMD -o "%{outfile}" -c "%{infile}"]
28
+ # end
29
+
30
+ # mrbc settings
31
+ # conf.mrbc do |mrbc|
32
+ # mrbc.compile_options = "-g -B%{funcname} -o-" # The -g option is required for line numbers
33
+ # end
34
+
35
+ # Linker settings
36
+ # conf.linker do |linker|
37
+ # linker.command = ENV['LD'] || 'gcc'
38
+ # linker.flags = [ENV['LDFLAGS'] || []]
39
+ # linker.flags_before_libraries = []
40
+ # linker.libraries = %w()
41
+ # linker.flags_after_libraries = []
42
+ # linker.library_paths = []
43
+ # linker.option_library = '-l%s'
44
+ # linker.option_library_path = '-L%s'
45
+ # linker.link_options = "%{flags} -o "%{outfile}" %{objs} %{libs}"
46
+ # end
47
+
48
+ # Archiver settings
49
+ # conf.archiver do |archiver|
50
+ # archiver.command = ENV['AR'] || 'ar'
51
+ # archiver.archive_options = 'rs "%{outfile}" %{objs}'
52
+ # end
53
+
54
+ # Parser generator settings
55
+ # conf.yacc do |yacc|
56
+ # yacc.command = ENV['YACC'] || 'bison'
57
+ # yacc.compile_options = %q[-o "%{outfile}" "%{infile}"]
58
+ # end
59
+
60
+ # gperf settings
61
+ # conf.gperf do |gperf|
62
+ # gperf.command = 'gperf'
63
+ # gperf.compile_options = %q[-L ANSI-C -C -p -j1 -i 1 -g -o -t -N mrb_reserved_word -k"1,3,$" "%{infile}" > "%{outfile}"]
64
+ # end
65
+
66
+ # file extensions
67
+ # conf.exts do |exts|
68
+ # exts.object = '.o'
69
+ # exts.executable = '' # '.exe' if Windows
70
+ # exts.library = '.a'
71
+ # end
72
+
73
+ # file separator
74
+ # conf.file_separator = '/'
75
+
76
+ # Turn on `enable_debug` for better debugging
77
+ # conf.enable_debug
78
+ conf.enable_bintest
79
+ conf.enable_test
80
+ end
@@ -1,17 +1,3 @@
1
- MRuby::Build.new do |conf|
2
- # Gets set by the VS command prompts
3
- if ENV['VisualStudioVersion'] || ENV['VSINSTALLDIR']
4
- toolchain :visualcpp
5
- else
6
- toolchain :gcc
7
- end
8
-
9
- enable_debug
10
-
11
- # Include the default GEMs
12
- conf.gembox 'default'
13
- end
14
-
15
1
  # Cross Compiling configuration for the Sega Dreamcast
16
2
  # This configuration requires KallistiOS (KOS)
17
3
  # https://dreamcast.wiki
@@ -25,7 +11,7 @@
25
11
  # To compile mruby with DreamSDK, RubyInstaller for Windows should be installed
26
12
  DREAMSDK_HOME = ENV["DREAMSDK_HOME"]
27
13
  MSYS_ROOT = !(DREAMSDK_HOME.nil? || DREAMSDK_HOME.empty?) ? "#{DREAMSDK_HOME}/msys/1.0" : ""
28
-
14
+
29
15
  # Setting paths
30
16
  DREAMCAST_PATH = "#{MSYS_ROOT}/opt/toolchains/dc"
31
17
  KOS_PATH = "#{DREAMCAST_PATH}/kos"
@@ -51,16 +37,16 @@
51
37
  cxx.defines = conf.cc.defines.dup
52
38
  cxx.compile_options = conf.cc.compile_options.dup
53
39
  end
54
-
40
+
55
41
  # Linker
56
42
  # There is an issue when making the mruby library with KallistiOS:
57
- # 'newlib_kill.o' and 'newlib_getpid.o' aren't found so they are explicitly
43
+ # 'newlib_kill.o' and 'newlib_getpid.o' aren't found so they are explicitly
58
44
  # specified here at least for now.
59
45
  conf.linker do |linker|
60
46
  linker.command="#{BIN_PATH}/sh-elf-gcc"
61
47
  linker.flags << ["#{MSYS_ROOT}/opt/toolchains/dc/kos/kernel/build/newlib_kill.o", "#{MSYS_ROOT}/opt/toolchains/dc/kos/kernel/build/newlib_getpid.o", "-Wl,--start-group -lkallisti -lc -lgcc -Wl,--end-group"]
62
48
  linker.library_paths << ["#{KOS_PATH}/lib/dreamcast", "#{KOS_PATH}/addons/lib/dreamcast", "#{KOS_PATH}/../kos-ports/lib"]
63
- end
49
+ end
64
50
 
65
51
  # Archiver
66
52
  conf.archiver do |archiver|
@@ -76,7 +62,7 @@
76
62
 
77
63
  # Disable C++ exception
78
64
  conf.disable_cxx_exception
79
-
65
+
80
66
  # Gems from core
81
67
  # removing mruby-io
82
68
  conf.gem :core => "mruby-metaprog"