debase-ruby_core_source 3.3.6 → 3.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (293) hide show
  1. checksums.yaml +4 -4
  2. data/.ruby-version +1 -0
  3. data/CHANGELOG.md +6 -0
  4. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/builtin.h +7 -1
  5. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/darray.h +1 -3
  6. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/id.h +5 -0
  7. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/insns.inc +2 -0
  8. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/insns_info.inc +310 -175
  9. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/internal/basic_operators.h +1 -0
  10. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/internal/bits.h +82 -0
  11. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/encoding.h +2 -0
  12. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/internal/error.h +26 -0
  13. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/internal/fixnum.h +1 -0
  14. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/internal/gc.h +14 -6
  15. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/internal/imemo.h +6 -1
  16. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/internal/io.h +1 -1
  17. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/internal/parse.h +2 -1
  18. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/proc.h +1 -0
  19. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/internal/ractor.h +4 -0
  20. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/internal/sanitizers.h +31 -39
  21. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/internal/string.h +22 -10
  22. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/internal/thread.h +23 -0
  23. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/internal/vm.h +1 -1
  24. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/method.h +1 -0
  25. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/optunifs.inc +1 -1
  26. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/parse.h +2 -2
  27. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/prism/ast.h +427 -3
  28. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/prism/defines.h +8 -7
  29. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/prism/diagnostic.h +1 -0
  30. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/prism/extension.h +1 -1
  31. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/prism/prism.h +47 -11
  32. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/prism/version.h +2 -2
  33. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/prism_compile.h +5 -5
  34. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/ractor_core.h +6 -6
  35. data/lib/debase/ruby_core_source/ruby-3.4.0/revision.h +5 -0
  36. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/rubyparser.h +3 -2
  37. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/thread_pthread.h +0 -1
  38. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/version.h +1 -1
  39. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/vm.inc +151 -88
  40. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/vm_core.h +40 -12
  41. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/vm_sync.h +3 -3
  42. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/vmtc.inc +2 -0
  43. data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/yjit.h +1 -0
  44. data/lib/debase/ruby_core_source/version.rb +1 -1
  45. metadata +147 -293
  46. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/darray.h +0 -191
  47. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/debug_counter.h +0 -423
  48. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/dln.h +0 -34
  49. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/id.h +0 -343
  50. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/insns.inc +0 -259
  51. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/insns_info.inc +0 -9530
  52. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/internal/array.h +0 -151
  53. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/internal/basic_operators.h +0 -63
  54. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/internal/bits.h +0 -568
  55. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/internal/class.h +0 -283
  56. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/internal/error.h +0 -216
  57. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/internal/fixnum.h +0 -184
  58. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/internal/gc.h +0 -334
  59. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/internal/hash.h +0 -191
  60. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/internal/imemo.h +0 -260
  61. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/internal/io.h +0 -140
  62. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/internal/parse.h +0 -117
  63. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/internal/ractor.h +0 -6
  64. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/internal/sanitizers.h +0 -297
  65. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/internal/string.h +0 -182
  66. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/internal/thread.h +0 -79
  67. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/internal/vm.h +0 -137
  68. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/known_errors.inc +0 -1419
  69. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/method.h +0 -255
  70. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/optunifs.inc +0 -43
  71. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/parse.h +0 -243
  72. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/prism/ast.h +0 -6245
  73. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/prism/defines.h +0 -206
  74. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/prism/diagnostic.h +0 -433
  75. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/prism/extension.h +0 -19
  76. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/prism/node.h +0 -150
  77. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/prism/options.h +0 -305
  78. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/prism/parser.h +0 -891
  79. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/prism/regexp.h +0 -33
  80. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/prism/static_literals.h +0 -120
  81. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/prism/util/pm_char.h +0 -205
  82. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/prism/util/pm_constant_pool.h +0 -226
  83. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/prism/util/pm_integer.h +0 -119
  84. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/prism/util/pm_newline_list.h +0 -102
  85. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/prism/util/pm_string.h +0 -174
  86. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/prism/util/pm_string_list.h +0 -44
  87. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/prism/version.h +0 -29
  88. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/prism_compile.h +0 -88
  89. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/ractor_core.h +0 -393
  90. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/regint.h +0 -1010
  91. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/revision.h +0 -5
  92. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/rubyparser.h +0 -1430
  93. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/shape.h +0 -233
  94. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/symbol.h +0 -118
  95. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/thread_pthread.h +0 -166
  96. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/version.h +0 -69
  97. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/vm.inc +0 -5643
  98. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/vm_callinfo.h +0 -605
  99. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/vm_core.h +0 -2236
  100. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/vm_insnhelper.h +0 -272
  101. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/vm_sync.h +0 -137
  102. data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/vmtc.inc +0 -253
  103. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/addr2line.h +0 -22
  104. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/builtin.h +0 -119
  105. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/ccan/build_assert/build_assert.h +0 -40
  106. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/ccan/check_type/check_type.h +0 -63
  107. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/ccan/container_of/container_of.h +0 -142
  108. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/ccan/list/list.h +0 -791
  109. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/ccan/str/str.h +0 -17
  110. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/constant.h +0 -53
  111. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/encindex.h +0 -70
  112. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/eval_intern.h +0 -324
  113. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/hrtime.h +0 -237
  114. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/id_table.h +0 -39
  115. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/bignum.h +0 -244
  116. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/cmdlineopt.h +0 -65
  117. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/compar.h +0 -29
  118. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/compile.h +0 -34
  119. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/compilers.h +0 -107
  120. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/complex.h +0 -29
  121. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/cont.h +0 -35
  122. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/dir.h +0 -16
  123. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/enc.h +0 -19
  124. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/encoding.h +0 -36
  125. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/enum.h +0 -18
  126. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/enumerator.h +0 -21
  127. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/eval.h +0 -33
  128. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/file.h +0 -38
  129. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/inits.h +0 -47
  130. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/load.h +0 -18
  131. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/loadpath.h +0 -16
  132. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/math.h +0 -23
  133. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/missing.h +0 -19
  134. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/numeric.h +0 -274
  135. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/object.h +0 -63
  136. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/proc.h +0 -30
  137. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/process.h +0 -124
  138. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/random.h +0 -17
  139. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/range.h +0 -40
  140. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/rational.h +0 -71
  141. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/re.h +0 -28
  142. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/ruby_parser.h +0 -102
  143. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/serial.h +0 -23
  144. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/signal.h +0 -24
  145. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/st.h +0 -11
  146. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/static_assert.h +0 -16
  147. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/struct.h +0 -127
  148. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/symbol.h +0 -45
  149. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/time.h +0 -34
  150. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/transcode.h +0 -23
  151. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/util.h +0 -27
  152. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/variable.h +0 -72
  153. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/warnings.h +0 -16
  154. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal.h +0 -108
  155. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/iseq.h +0 -340
  156. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/node.h +0 -111
  157. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/node_name.inc +0 -224
  158. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/optinsn.inc +0 -128
  159. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/parser_bits.h +0 -564
  160. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/parser_node.h +0 -32
  161. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/parser_st.h +0 -162
  162. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/parser_value.h +0 -106
  163. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/encoding.h +0 -283
  164. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/pack.h +0 -163
  165. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/prettyprint.h +0 -34
  166. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/prism.h +0 -336
  167. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_buffer.h +0 -218
  168. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_list.h +0 -97
  169. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_memchr.h +0 -29
  170. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_strncasecmp.h +0 -32
  171. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_strpbrk.h +0 -46
  172. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/probes_helper.h +0 -42
  173. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/regenc.h +0 -254
  174. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/regparse.h +0 -371
  175. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/revision.h +0 -5
  176. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/rjit.h +0 -101
  177. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/rjit_c.h +0 -165
  178. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/ruby_assert.h +0 -14
  179. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/ruby_atomic.h +0 -23
  180. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/siphash.h +0 -48
  181. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/thread_none.h +0 -21
  182. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/thread_win32.h +0 -58
  183. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/timev.h +0 -58
  184. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/transcode_data.h +0 -138
  185. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/variable.h +0 -39
  186. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/vm_call_iseq_optimized.inc +0 -244
  187. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/vm_debug.h +0 -124
  188. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/vm_exec.h +0 -199
  189. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/vm_opts.h +0 -67
  190. data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/yjit.h +0 -79
  191. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/addr2line.h +0 -0
  192. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/ccan/build_assert/build_assert.h +0 -0
  193. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/ccan/check_type/check_type.h +0 -0
  194. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/ccan/container_of/container_of.h +0 -0
  195. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/ccan/list/list.h +0 -0
  196. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/ccan/str/str.h +0 -0
  197. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/constant.h +0 -0
  198. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/debug_counter.h +0 -0
  199. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/dln.h +0 -0
  200. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/encindex.h +0 -0
  201. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/eval_intern.h +0 -0
  202. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/hrtime.h +0 -0
  203. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/id_table.h +0 -0
  204. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/internal/array.h +0 -0
  205. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/bignum.h +0 -0
  206. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/internal/class.h +0 -0
  207. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/cmdlineopt.h +0 -0
  208. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/compar.h +0 -0
  209. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/compile.h +0 -0
  210. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/compilers.h +0 -0
  211. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/complex.h +0 -0
  212. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/cont.h +0 -0
  213. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/dir.h +0 -0
  214. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/enc.h +0 -0
  215. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/enum.h +0 -0
  216. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/enumerator.h +0 -0
  217. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/eval.h +0 -0
  218. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/file.h +0 -0
  219. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/internal/hash.h +0 -0
  220. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/inits.h +0 -0
  221. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/load.h +0 -0
  222. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/loadpath.h +0 -0
  223. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/math.h +0 -0
  224. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/missing.h +0 -0
  225. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/numeric.h +0 -0
  226. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/object.h +0 -0
  227. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/process.h +0 -0
  228. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/random.h +0 -0
  229. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/range.h +0 -0
  230. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/rational.h +0 -0
  231. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/re.h +0 -0
  232. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/ruby_parser.h +0 -0
  233. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/serial.h +0 -0
  234. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/signal.h +0 -0
  235. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/st.h +0 -0
  236. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/static_assert.h +0 -0
  237. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/struct.h +0 -0
  238. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/symbol.h +0 -0
  239. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/time.h +0 -0
  240. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/transcode.h +0 -0
  241. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/util.h +0 -0
  242. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/variable.h +0 -0
  243. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/warnings.h +0 -0
  244. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal.h +0 -0
  245. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/iseq.h +0 -0
  246. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/known_errors.inc +0 -0
  247. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/node.h +0 -0
  248. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/node_name.inc +0 -0
  249. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/optinsn.inc +0 -0
  250. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/parser_bits.h +0 -0
  251. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/parser_node.h +0 -0
  252. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/parser_st.h +0 -0
  253. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/parser_value.h +0 -0
  254. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/prism/encoding.h +0 -0
  255. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/prism/node.h +0 -0
  256. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/prism/options.h +0 -0
  257. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/prism/pack.h +0 -0
  258. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/prism/parser.h +0 -0
  259. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/prism/prettyprint.h +0 -0
  260. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/prism/regexp.h +0 -0
  261. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/prism/static_literals.h +0 -0
  262. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/prism/util/pm_buffer.h +0 -0
  263. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/prism/util/pm_char.h +0 -0
  264. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/prism/util/pm_constant_pool.h +0 -0
  265. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/prism/util/pm_integer.h +0 -0
  266. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/prism/util/pm_list.h +0 -0
  267. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/prism/util/pm_memchr.h +0 -0
  268. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/prism/util/pm_newline_list.h +0 -0
  269. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/prism/util/pm_string.h +0 -0
  270. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/prism/util/pm_strncasecmp.h +0 -0
  271. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/prism/util/pm_strpbrk.h +0 -0
  272. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/probes_helper.h +0 -0
  273. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/regenc.h +0 -0
  274. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/regint.h +0 -0
  275. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/regparse.h +0 -0
  276. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/rjit.h +0 -0
  277. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/rjit_c.h +0 -0
  278. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/ruby_assert.h +0 -0
  279. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/ruby_atomic.h +0 -0
  280. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/shape.h +0 -0
  281. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/siphash.h +0 -0
  282. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/symbol.h +0 -0
  283. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/thread_none.h +0 -0
  284. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/thread_win32.h +0 -0
  285. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/timev.h +0 -0
  286. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/transcode_data.h +0 -0
  287. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/variable.h +0 -0
  288. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/vm_call_iseq_optimized.inc +0 -0
  289. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/vm_callinfo.h +0 -0
  290. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/vm_debug.h +0 -0
  291. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/vm_exec.h +0 -0
  292. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/vm_insnhelper.h +0 -0
  293. /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/vm_opts.h +0 -0
@@ -1,218 +0,0 @@
1
- /**
2
- * @file pm_buffer.h
3
- *
4
- * A wrapper around a contiguous block of allocated memory.
5
- */
6
- #ifndef PRISM_BUFFER_H
7
- #define PRISM_BUFFER_H
8
-
9
- #include "prism/defines.h"
10
- #include "prism/util/pm_char.h"
11
-
12
- #include <assert.h>
13
- #include <stdbool.h>
14
- #include <stdint.h>
15
- #include <stdlib.h>
16
- #include <string.h>
17
-
18
- /**
19
- * A pm_buffer_t is a simple memory buffer that stores data in a contiguous
20
- * block of memory.
21
- */
22
- typedef struct {
23
- /** The length of the buffer in bytes. */
24
- size_t length;
25
-
26
- /** The capacity of the buffer in bytes that has been allocated. */
27
- size_t capacity;
28
-
29
- /** A pointer to the start of the buffer. */
30
- char *value;
31
- } pm_buffer_t;
32
-
33
- /**
34
- * Return the size of the pm_buffer_t struct.
35
- *
36
- * @returns The size of the pm_buffer_t struct.
37
- */
38
- PRISM_EXPORTED_FUNCTION size_t pm_buffer_sizeof(void);
39
-
40
- /**
41
- * Initialize a pm_buffer_t with the given capacity.
42
- *
43
- * @param buffer The buffer to initialize.
44
- * @param capacity The capacity of the buffer.
45
- * @returns True if the buffer was initialized successfully, false otherwise.
46
- */
47
- bool pm_buffer_init_capacity(pm_buffer_t *buffer, size_t capacity);
48
-
49
- /**
50
- * Initialize a pm_buffer_t with its default values.
51
- *
52
- * @param buffer The buffer to initialize.
53
- * @returns True if the buffer was initialized successfully, false otherwise.
54
- */
55
- PRISM_EXPORTED_FUNCTION bool pm_buffer_init(pm_buffer_t *buffer);
56
-
57
- /**
58
- * Return the value of the buffer.
59
- *
60
- * @param buffer The buffer to get the value of.
61
- * @returns The value of the buffer.
62
- */
63
- PRISM_EXPORTED_FUNCTION char * pm_buffer_value(const pm_buffer_t *buffer);
64
-
65
- /**
66
- * Return the length of the buffer.
67
- *
68
- * @param buffer The buffer to get the length of.
69
- * @returns The length of the buffer.
70
- */
71
- PRISM_EXPORTED_FUNCTION size_t pm_buffer_length(const pm_buffer_t *buffer);
72
-
73
- /**
74
- * Append the given amount of space as zeroes to the buffer.
75
- *
76
- * @param buffer The buffer to append to.
77
- * @param length The amount of space to append and zero.
78
- */
79
- void pm_buffer_append_zeroes(pm_buffer_t *buffer, size_t length);
80
-
81
- /**
82
- * Append a formatted string to the buffer.
83
- *
84
- * @param buffer The buffer to append to.
85
- * @param format The format string to append.
86
- * @param ... The arguments to the format string.
87
- */
88
- void pm_buffer_append_format(pm_buffer_t *buffer, const char *format, ...) PRISM_ATTRIBUTE_FORMAT(2, 3);
89
-
90
- /**
91
- * Append a string to the buffer.
92
- *
93
- * @param buffer The buffer to append to.
94
- * @param value The string to append.
95
- * @param length The length of the string to append.
96
- */
97
- void pm_buffer_append_string(pm_buffer_t *buffer, const char *value, size_t length);
98
-
99
- /**
100
- * Append a list of bytes to the buffer.
101
- *
102
- * @param buffer The buffer to append to.
103
- * @param value The bytes to append.
104
- * @param length The length of the bytes to append.
105
- */
106
- void pm_buffer_append_bytes(pm_buffer_t *buffer, const uint8_t *value, size_t length);
107
-
108
- /**
109
- * Append a single byte to the buffer.
110
- *
111
- * @param buffer The buffer to append to.
112
- * @param value The byte to append.
113
- */
114
- void pm_buffer_append_byte(pm_buffer_t *buffer, uint8_t value);
115
-
116
- /**
117
- * Append a 32-bit unsigned integer to the buffer as a variable-length integer.
118
- *
119
- * @param buffer The buffer to append to.
120
- * @param value The integer to append.
121
- */
122
- void pm_buffer_append_varuint(pm_buffer_t *buffer, uint32_t value);
123
-
124
- /**
125
- * Append a 32-bit signed integer to the buffer as a variable-length integer.
126
- *
127
- * @param buffer The buffer to append to.
128
- * @param value The integer to append.
129
- */
130
- void pm_buffer_append_varsint(pm_buffer_t *buffer, int32_t value);
131
-
132
- /**
133
- * Append a double to the buffer.
134
- *
135
- * @param buffer The buffer to append to.
136
- * @param value The double to append.
137
- */
138
- void pm_buffer_append_double(pm_buffer_t *buffer, double value);
139
-
140
- /**
141
- * The different types of escaping that can be performed by the buffer when
142
- * appending a slice of Ruby source code.
143
- */
144
- typedef enum {
145
- PM_BUFFER_ESCAPING_RUBY,
146
- PM_BUFFER_ESCAPING_JSON
147
- } pm_buffer_escaping_t;
148
-
149
- /**
150
- * Append a slice of source code to the buffer.
151
- *
152
- * @param buffer The buffer to append to.
153
- * @param source The source code to append.
154
- * @param length The length of the source code to append.
155
- * @param escaping The type of escaping to perform.
156
- */
157
- void pm_buffer_append_source(pm_buffer_t *buffer, const uint8_t *source, size_t length, pm_buffer_escaping_t escaping);
158
-
159
- /**
160
- * Prepend the given string to the buffer.
161
- *
162
- * @param buffer The buffer to prepend to.
163
- * @param value The string to prepend.
164
- * @param length The length of the string to prepend.
165
- */
166
- void pm_buffer_prepend_string(pm_buffer_t *buffer, const char *value, size_t length);
167
-
168
- /**
169
- * Concatenate one buffer onto another.
170
- *
171
- * @param destination The buffer to concatenate onto.
172
- * @param source The buffer to concatenate.
173
- */
174
- void pm_buffer_concat(pm_buffer_t *destination, const pm_buffer_t *source);
175
-
176
- /**
177
- * Clear the buffer by reducing its size to 0. This does not free the allocated
178
- * memory, but it does allow the buffer to be reused.
179
- *
180
- * @param buffer The buffer to clear.
181
- */
182
- void pm_buffer_clear(pm_buffer_t *buffer);
183
-
184
- /**
185
- * Strip the whitespace from the end of the buffer.
186
- *
187
- * @param buffer The buffer to strip.
188
- */
189
- void pm_buffer_rstrip(pm_buffer_t *buffer);
190
-
191
- /**
192
- * Checks if the buffer includes the given value.
193
- *
194
- * @param buffer The buffer to check.
195
- * @param value The value to check for.
196
- * @returns The index of the first occurrence of the value in the buffer, or
197
- * SIZE_MAX if the value is not found.
198
- */
199
- size_t pm_buffer_index(const pm_buffer_t *buffer, char value);
200
-
201
- /**
202
- * Insert the given string into the buffer at the given index.
203
- *
204
- * @param buffer The buffer to insert into.
205
- * @param index The index to insert at.
206
- * @param value The string to insert.
207
- * @param length The length of the string to insert.
208
- */
209
- void pm_buffer_insert(pm_buffer_t *buffer, size_t index, const char *value, size_t length);
210
-
211
- /**
212
- * Free the memory associated with the buffer.
213
- *
214
- * @param buffer The buffer to free.
215
- */
216
- PRISM_EXPORTED_FUNCTION void pm_buffer_free(pm_buffer_t *buffer);
217
-
218
- #endif
@@ -1,97 +0,0 @@
1
- /**
2
- * @file pm_list.h
3
- *
4
- * An abstract linked list.
5
- */
6
- #ifndef PRISM_LIST_H
7
- #define PRISM_LIST_H
8
-
9
- #include "prism/defines.h"
10
-
11
- #include <stdbool.h>
12
- #include <stddef.h>
13
- #include <stdint.h>
14
- #include <stdlib.h>
15
-
16
- /**
17
- * This struct represents an abstract linked list that provides common
18
- * functionality. It is meant to be used any time a linked list is necessary to
19
- * store data.
20
- *
21
- * The linked list itself operates off a set of pointers. Because the pointers
22
- * are not necessarily sequential, they can be of any size. We use this fact to
23
- * allow the consumer of this linked list to extend the node struct to include
24
- * any data they want. This is done by using the pm_list_node_t as the first
25
- * member of the struct.
26
- *
27
- * For example, if we want to store a list of integers, we can do the following:
28
- *
29
- * ```c
30
- * typedef struct {
31
- * pm_list_node_t node;
32
- * int value;
33
- * } pm_int_node_t;
34
- *
35
- * pm_list_t list = { 0 };
36
- * pm_int_node_t *node = xmalloc(sizeof(pm_int_node_t));
37
- * node->value = 5;
38
- *
39
- * pm_list_append(&list, &node->node);
40
- * ```
41
- *
42
- * The pm_list_t struct is used to represent the overall linked list. It
43
- * contains a pointer to the head and tail of the list. This allows for easy
44
- * iteration and appending of new nodes.
45
- */
46
- typedef struct pm_list_node {
47
- /** A pointer to the next node in the list. */
48
- struct pm_list_node *next;
49
- } pm_list_node_t;
50
-
51
- /**
52
- * This represents the overall linked list. It keeps a pointer to the head and
53
- * tail so that iteration is easy and pushing new nodes is easy.
54
- */
55
- typedef struct {
56
- /** The size of the list. */
57
- size_t size;
58
-
59
- /** A pointer to the head of the list. */
60
- pm_list_node_t *head;
61
-
62
- /** A pointer to the tail of the list. */
63
- pm_list_node_t *tail;
64
- } pm_list_t;
65
-
66
- /**
67
- * Returns true if the given list is empty.
68
- *
69
- * @param list The list to check.
70
- * @return True if the given list is empty, otherwise false.
71
- */
72
- PRISM_EXPORTED_FUNCTION bool pm_list_empty_p(pm_list_t *list);
73
-
74
- /**
75
- * Returns the size of the list.
76
- *
77
- * @param list The list to check.
78
- * @return The size of the list.
79
- */
80
- PRISM_EXPORTED_FUNCTION size_t pm_list_size(pm_list_t *list);
81
-
82
- /**
83
- * Append a node to the given list.
84
- *
85
- * @param list The list to append to.
86
- * @param node The node to append.
87
- */
88
- void pm_list_append(pm_list_t *list, pm_list_node_t *node);
89
-
90
- /**
91
- * Deallocate the internal state of the given list.
92
- *
93
- * @param list The list to free.
94
- */
95
- PRISM_EXPORTED_FUNCTION void pm_list_free(pm_list_t *list);
96
-
97
- #endif
@@ -1,29 +0,0 @@
1
- /**
2
- * @file pm_memchr.h
3
- *
4
- * A custom memchr implementation.
5
- */
6
- #ifndef PRISM_MEMCHR_H
7
- #define PRISM_MEMCHR_H
8
-
9
- #include "prism/defines.h"
10
- #include "prism/encoding.h"
11
-
12
- #include <stddef.h>
13
-
14
- /**
15
- * We need to roll our own memchr to handle cases where the encoding changes and
16
- * we need to search for a character in a buffer that could be the trailing byte
17
- * of a multibyte character.
18
- *
19
- * @param source The source string.
20
- * @param character The character to search for.
21
- * @param number The maximum number of bytes to search.
22
- * @param encoding_changed Whether the encoding changed.
23
- * @param encoding A pointer to the encoding.
24
- * @return A pointer to the first occurrence of the character in the source
25
- * string, or NULL if no such character exists.
26
- */
27
- void * pm_memchr(const void *source, int character, size_t number, bool encoding_changed, const pm_encoding_t *encoding);
28
-
29
- #endif
@@ -1,32 +0,0 @@
1
- /**
2
- * @file pm_strncasecmp.h
3
- *
4
- * A custom strncasecmp implementation.
5
- */
6
- #ifndef PRISM_STRNCASECMP_H
7
- #define PRISM_STRNCASECMP_H
8
-
9
- #include "prism/defines.h"
10
-
11
- #include <ctype.h>
12
- #include <stddef.h>
13
- #include <stdint.h>
14
-
15
- /**
16
- * Compare two strings, ignoring case, up to the given length. Returns 0 if the
17
- * strings are equal, a negative number if string1 is less than string2, or a
18
- * positive number if string1 is greater than string2.
19
- *
20
- * Note that this is effectively our own implementation of strncasecmp, but it's
21
- * not available on all of the platforms we want to support so we're rolling it
22
- * here.
23
- *
24
- * @param string1 The first string to compare.
25
- * @param string2 The second string to compare
26
- * @param length The maximum number of characters to compare.
27
- * @return 0 if the strings are equal, a negative number if string1 is less than
28
- * string2, or a positive number if string1 is greater than string2.
29
- */
30
- int pm_strncasecmp(const uint8_t *string1, const uint8_t *string2, size_t length);
31
-
32
- #endif
@@ -1,46 +0,0 @@
1
- /**
2
- * @file pm_strpbrk.h
3
- *
4
- * A custom strpbrk implementation.
5
- */
6
- #ifndef PRISM_STRPBRK_H
7
- #define PRISM_STRPBRK_H
8
-
9
- #include "prism/defines.h"
10
- #include "prism/diagnostic.h"
11
- #include "prism/parser.h"
12
-
13
- #include <stddef.h>
14
- #include <string.h>
15
-
16
- /**
17
- * Here we have rolled our own version of strpbrk. The standard library strpbrk
18
- * has undefined behavior when the source string is not null-terminated. We want
19
- * to support strings that are not null-terminated because pm_parse does not
20
- * have the contract that the string is null-terminated. (This is desirable
21
- * because it means the extension can call pm_parse with the result of a call to
22
- * mmap).
23
- *
24
- * The standard library strpbrk also does not support passing a maximum length
25
- * to search. We want to support this for the reason mentioned above, but we
26
- * also don't want it to stop on null bytes. Ruby actually allows null bytes
27
- * within strings, comments, regular expressions, etc. So we need to be able to
28
- * skip past them.
29
- *
30
- * Finally, we want to support encodings wherein the charset could contain
31
- * characters that are trailing bytes of multi-byte characters. For example, in
32
- * Shift-JIS, the backslash character can be a trailing byte. In that case we
33
- * need to take a slower path and iterate one multi-byte character at a time.
34
- *
35
- * @param parser The parser.
36
- * @param source The source to search.
37
- * @param charset The charset to search for.
38
- * @param length The maximum number of bytes to search.
39
- * @param validate Whether to validate that the source string is valid in the
40
- * current encoding of the parser.
41
- * @return A pointer to the first character in the source string that is in the
42
- * charset, or NULL if no such character exists.
43
- */
44
- const uint8_t * pm_strpbrk(pm_parser_t *parser, const uint8_t *source, const uint8_t *charset, ptrdiff_t length, bool validate);
45
-
46
- #endif
@@ -1,42 +0,0 @@
1
- #ifndef RUBY_PROBES_HELPER_H
2
- #define RUBY_PROBES_HELPER_H
3
-
4
- #include "ruby/ruby.h"
5
-
6
- struct ruby_dtrace_method_hook_args {
7
- const char *classname;
8
- const char *methodname;
9
- const char *filename;
10
- int line_no;
11
- volatile VALUE klass;
12
- volatile VALUE name;
13
- };
14
-
15
- NOINLINE(int rb_dtrace_setup(rb_execution_context_t *, VALUE, ID, struct ruby_dtrace_method_hook_args *));
16
-
17
- #define RUBY_DTRACE_METHOD_HOOK(name, ec, klazz, id) \
18
- do { \
19
- if (UNLIKELY(RUBY_DTRACE_##name##_ENABLED())) { \
20
- struct ruby_dtrace_method_hook_args args; \
21
- if (rb_dtrace_setup(ec, klazz, id, &args)) { \
22
- RUBY_DTRACE_##name(args.classname, \
23
- args.methodname, \
24
- args.filename, \
25
- args.line_no); \
26
- } \
27
- } \
28
- } while (0)
29
-
30
- #define RUBY_DTRACE_METHOD_ENTRY_HOOK(ec, klass, id) \
31
- RUBY_DTRACE_METHOD_HOOK(METHOD_ENTRY, ec, klass, id)
32
-
33
- #define RUBY_DTRACE_METHOD_RETURN_HOOK(ec, klass, id) \
34
- RUBY_DTRACE_METHOD_HOOK(METHOD_RETURN, ec, klass, id)
35
-
36
- #define RUBY_DTRACE_CMETHOD_ENTRY_HOOK(ec, klass, id) \
37
- RUBY_DTRACE_METHOD_HOOK(CMETHOD_ENTRY, ec, klass, id)
38
-
39
- #define RUBY_DTRACE_CMETHOD_RETURN_HOOK(ec, klass, id) \
40
- RUBY_DTRACE_METHOD_HOOK(CMETHOD_RETURN, ec, klass, id)
41
-
42
- #endif /* RUBY_PROBES_HELPER_H */