datadog-ruby_core_source 3.3.6 → 3.4.1

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 (478) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.datadog.md +16 -1
  3. data/README.md +8 -5
  4. data/datadog-ruby_core_source.gemspec +7 -2
  5. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/id.h +5 -0
  6. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/basic_operators.h +1 -0
  7. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/bits.h +82 -0
  8. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/encoding.h +2 -0
  9. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/error.h +26 -0
  10. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/fixnum.h +1 -0
  11. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/gc.h +14 -6
  12. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/imemo.h +6 -1
  13. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/io.h +1 -1
  14. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/parse.h +2 -1
  15. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/proc.h +1 -0
  16. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/ractor.h +4 -0
  17. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/sanitizers.h +31 -39
  18. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/string.h +22 -10
  19. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/thread.h +23 -0
  20. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/vm.h +1 -1
  21. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/method.h +1 -0
  22. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/ast.h +427 -3
  23. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/defines.h +8 -7
  24. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/diagnostic.h +1 -0
  25. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/extension.h +1 -1
  26. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/prism.h +47 -11
  27. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/version.h +2 -2
  28. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism_compile.h +5 -5
  29. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/ractor_core.h +6 -6
  30. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/rubyparser.h +3 -2
  31. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/thread_pthread.h +0 -1
  32. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/vm_core.h +40 -12
  33. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/id.h +9 -0
  34. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/internal/array.h +1 -0
  35. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/internal/basic_operators.h +2 -0
  36. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/internal/bits.h +82 -0
  37. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/internal/class.h +1 -1
  38. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/cmdlineopt.h +0 -4
  39. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/encoding.h +2 -0
  40. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/internal/error.h +28 -0
  41. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/internal/fixnum.h +1 -0
  42. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/internal/gc.h +29 -30
  43. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/internal/hash.h +2 -0
  44. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/internal/imemo.h +10 -13
  45. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/internal/io.h +5 -2
  46. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/internal/parse.h +18 -4
  47. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/proc.h +1 -1
  48. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/ractor.h +4 -0
  49. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/re.h +2 -2
  50. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/internal/sanitizers.h +72 -39
  51. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/internal/string.h +35 -18
  52. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/struct.h +0 -8
  53. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/symbol.h +2 -0
  54. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/internal/thread.h +29 -0
  55. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/time.h +4 -1
  56. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/variable.h +0 -2
  57. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/internal/vm.h +3 -3
  58. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/iseq.h +12 -1
  59. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/method.h +4 -1
  60. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/node.h +14 -3
  61. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/prism/ast.h +2172 -453
  62. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/prism/defines.h +61 -7
  63. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/prism/diagnostic.h +24 -6
  64. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/prism/extension.h +5 -5
  65. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/prism/node.h +0 -21
  66. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/prism/options.h +141 -4
  67. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/prism/parser.h +82 -40
  68. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/prism/prism.h +51 -4
  69. data/lib/datadog/ruby_core_source/ruby-3.5.0-preview1/prism/regexp.h +43 -0
  70. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/prism/static_literals.h +3 -2
  71. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/prism/util/pm_buffer.h +10 -0
  72. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/prism/util/pm_char.h +1 -2
  73. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/prism/util/pm_constant_pool.h +0 -8
  74. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/prism/util/pm_integer.h +22 -15
  75. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/prism/util/pm_newline_list.h +11 -0
  76. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/prism/util/pm_string.h +28 -12
  77. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/prism/version.h +3 -3
  78. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/prism_compile.h +29 -12
  79. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/ractor_core.h +9 -20
  80. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/rubyparser.h +198 -248
  81. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/shape.h +2 -1
  82. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/thread_pthread.h +28 -27
  83. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.5.0-preview1}/vm_core.h +65 -66
  84. data/lib/datadog/ruby_core_source/version.rb +1 -1
  85. data/lib/datadog/ruby_core_source.rb +14 -1
  86. metadata +213 -476
  87. data/.github/workflows/publish.yml +0 -18
  88. data/.gitignore +0 -7
  89. data/.idea/vcs.xml +0 -28
  90. data/CHANGELOG.md +0 -284
  91. data/CONTRIBUTING.md +0 -2
  92. data/Gemfile +0 -4
  93. data/Rakefile +0 -73
  94. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/addr2line.h +0 -21
  95. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/constant.h +0 -50
  96. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/debug_counter.h +0 -109
  97. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/dln.h +0 -51
  98. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/encindex.h +0 -69
  99. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/eval_intern.h +0 -334
  100. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/gc.h +0 -116
  101. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/id_table.h +0 -31
  102. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/insns.inc +0 -217
  103. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/insns_info.inc +0 -1570
  104. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/known_errors.inc +0 -746
  105. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/node_name.inc +0 -198
  106. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/opt_sc.inc +0 -1601
  107. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/optinsn.inc +0 -103
  108. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/optunifs.inc +0 -61
  109. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/parse.h +0 -206
  110. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/probes_helper.h +0 -43
  111. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/regenc.h +0 -254
  112. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/regint.h +0 -938
  113. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/regparse.h +0 -370
  114. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/revision.h +0 -1
  115. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/siphash.h +0 -48
  116. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/symbol.h +0 -108
  117. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/thread_win32.h +0 -36
  118. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/timev.h +0 -42
  119. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/transcode_data.h +0 -139
  120. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/version.h +0 -73
  121. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/vm.inc +0 -3667
  122. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/vm_call_iseq_optimized.inc +0 -213
  123. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/vm_exec.h +0 -192
  124. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/vm_insnhelper.h +0 -255
  125. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/vmtc.inc +0 -214
  126. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/addr2line.h +0 -21
  127. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/constant.h +0 -51
  128. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/debug_counter.h +0 -109
  129. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/dln.h +0 -51
  130. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/encindex.h +0 -69
  131. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/eval_intern.h +0 -334
  132. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/gc.h +0 -116
  133. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/id_table.h +0 -31
  134. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/insns.inc +0 -217
  135. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/insns_info.inc +0 -1570
  136. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/known_errors.inc +0 -746
  137. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/node_name.inc +0 -198
  138. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/opt_sc.inc +0 -1601
  139. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/optinsn.inc +0 -103
  140. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/optunifs.inc +0 -61
  141. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/parse.h +0 -206
  142. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/probes_helper.h +0 -43
  143. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/regenc.h +0 -254
  144. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/regint.h +0 -938
  145. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/regparse.h +0 -370
  146. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/revision.h +0 -1
  147. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/siphash.h +0 -48
  148. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/symbol.h +0 -108
  149. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/thread_win32.h +0 -36
  150. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/timev.h +0 -42
  151. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/transcode_data.h +0 -139
  152. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/version.h +0 -73
  153. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/vm.inc +0 -3667
  154. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/vm_call_iseq_optimized.inc +0 -213
  155. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/vm_exec.h +0 -192
  156. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/vm_insnhelper.h +0 -255
  157. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/vmtc.inc +0 -214
  158. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/addr2line.h +0 -21
  159. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/constant.h +0 -51
  160. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/debug_counter.h +0 -109
  161. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/dln.h +0 -51
  162. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/encindex.h +0 -69
  163. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/eval_intern.h +0 -334
  164. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/gc.h +0 -116
  165. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/id_table.h +0 -31
  166. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/insns.inc +0 -217
  167. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/insns_info.inc +0 -1570
  168. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/known_errors.inc +0 -746
  169. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/node_name.inc +0 -198
  170. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/opt_sc.inc +0 -1601
  171. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/optinsn.inc +0 -103
  172. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/optunifs.inc +0 -61
  173. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/parse.h +0 -200
  174. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/probes_helper.h +0 -43
  175. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/regenc.h +0 -254
  176. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/regint.h +0 -938
  177. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/regparse.h +0 -370
  178. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/revision.h +0 -1
  179. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/siphash.h +0 -48
  180. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/symbol.h +0 -108
  181. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/thread_win32.h +0 -36
  182. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/timev.h +0 -42
  183. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/transcode_data.h +0 -139
  184. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/version.h +0 -73
  185. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/vm.inc +0 -3667
  186. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/vm_call_iseq_optimized.inc +0 -213
  187. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/vm_exec.h +0 -192
  188. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/vm_insnhelper.h +0 -255
  189. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/vmtc.inc +0 -214
  190. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/addr2line.h +0 -22
  191. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/builtin.h +0 -117
  192. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/constant.h +0 -53
  193. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/darray.h +0 -246
  194. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/debug_counter.h +0 -423
  195. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/dln.h +0 -32
  196. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/encindex.h +0 -70
  197. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/eval_intern.h +0 -343
  198. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/hrtime.h +0 -227
  199. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/insns.inc +0 -251
  200. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/insns_info.inc +0 -9215
  201. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/known_errors.inc +0 -791
  202. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/node_name.inc +0 -212
  203. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/optinsn.inc +0 -128
  204. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/optunifs.inc +0 -43
  205. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/parse.h +0 -243
  206. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/parser_bits.h +0 -564
  207. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/parser_node.h +0 -32
  208. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/probes_helper.h +0 -42
  209. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/regenc.h +0 -254
  210. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/regint.h +0 -1004
  211. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/regparse.h +0 -371
  212. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/revision.h +0 -5
  213. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/rjit.h +0 -101
  214. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/rjit_c.h +0 -164
  215. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/siphash.h +0 -48
  216. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/symbol.h +0 -118
  217. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/thread_win32.h +0 -58
  218. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/timev.h +0 -58
  219. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/transcode_data.h +0 -138
  220. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/variable.h +0 -39
  221. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/version.h +0 -69
  222. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm.inc +0 -5436
  223. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm_call_iseq_optimized.inc +0 -244
  224. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm_callinfo.h +0 -619
  225. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm_exec.h +0 -199
  226. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm_insnhelper.h +0 -261
  227. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm_sync.h +0 -137
  228. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vmtc.inc +0 -245
  229. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/yjit.h +0 -72
  230. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/addr2line.h +0 -22
  231. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/builtin.h +0 -117
  232. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/constant.h +0 -53
  233. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/darray.h +0 -246
  234. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/debug_counter.h +0 -423
  235. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/dln.h +0 -32
  236. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/encindex.h +0 -70
  237. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/eval_intern.h +0 -343
  238. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/hrtime.h +0 -227
  239. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/insns.inc +0 -251
  240. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/insns_info.inc +0 -9215
  241. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/known_errors.inc +0 -791
  242. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/node_name.inc +0 -212
  243. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/optinsn.inc +0 -128
  244. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/optunifs.inc +0 -43
  245. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/parse.h +0 -243
  246. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/parser_bits.h +0 -564
  247. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/parser_node.h +0 -32
  248. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/probes_helper.h +0 -42
  249. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/regenc.h +0 -254
  250. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/regint.h +0 -1006
  251. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/regparse.h +0 -371
  252. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/revision.h +0 -5
  253. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/rjit.h +0 -101
  254. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/rjit_c.h +0 -164
  255. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/siphash.h +0 -48
  256. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/symbol.h +0 -118
  257. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/thread_win32.h +0 -58
  258. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/timev.h +0 -58
  259. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/transcode_data.h +0 -138
  260. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/variable.h +0 -39
  261. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/version.h +0 -69
  262. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm.inc +0 -5436
  263. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm_call_iseq_optimized.inc +0 -244
  264. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm_callinfo.h +0 -614
  265. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm_exec.h +0 -199
  266. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm_insnhelper.h +0 -261
  267. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm_sync.h +0 -137
  268. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vmtc.inc +0 -245
  269. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/yjit.h +0 -72
  270. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/addr2line.h +0 -22
  271. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/builtin.h +0 -119
  272. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/constant.h +0 -53
  273. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/darray.h +0 -191
  274. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/debug_counter.h +0 -423
  275. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/dln.h +0 -34
  276. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/encindex.h +0 -70
  277. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/eval_intern.h +0 -324
  278. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/hrtime.h +0 -237
  279. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/insns.inc +0 -259
  280. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/insns_info.inc +0 -9530
  281. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/known_errors.inc +0 -1419
  282. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/node_name.inc +0 -224
  283. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/optinsn.inc +0 -128
  284. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/optunifs.inc +0 -43
  285. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/parse.h +0 -243
  286. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/parser_bits.h +0 -564
  287. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/parser_node.h +0 -32
  288. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/regexp.h +0 -33
  289. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/util/pm_string_list.h +0 -44
  290. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/probes_helper.h +0 -42
  291. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/regenc.h +0 -254
  292. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/regint.h +0 -1010
  293. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/regparse.h +0 -371
  294. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/revision.h +0 -5
  295. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/rjit.h +0 -101
  296. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/rjit_c.h +0 -165
  297. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/siphash.h +0 -48
  298. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/symbol.h +0 -118
  299. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/thread_win32.h +0 -58
  300. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/timev.h +0 -58
  301. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/transcode_data.h +0 -138
  302. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/variable.h +0 -39
  303. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/version.h +0 -69
  304. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm.inc +0 -5643
  305. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm_call_iseq_optimized.inc +0 -244
  306. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm_callinfo.h +0 -605
  307. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm_exec.h +0 -199
  308. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm_insnhelper.h +0 -272
  309. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm_sync.h +0 -137
  310. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vmtc.inc +0 -253
  311. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/yjit.h +0 -79
  312. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/addr2line.h +0 -22
  313. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/builtin.h +0 -119
  314. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/constant.h +0 -53
  315. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/darray.h +0 -209
  316. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/debug_counter.h +0 -423
  317. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/dln.h +0 -32
  318. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/encindex.h +0 -70
  319. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/eval_intern.h +0 -324
  320. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/hrtime.h +0 -237
  321. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/insns.inc +0 -265
  322. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/insns_info.inc +0 -9902
  323. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/known_errors.inc +0 -1419
  324. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/node_name.inc +0 -224
  325. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/optinsn.inc +0 -128
  326. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/optunifs.inc +0 -43
  327. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/parse.h +0 -244
  328. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/parser_bits.h +0 -564
  329. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/parser_node.h +0 -32
  330. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/probes_helper.h +0 -42
  331. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/regenc.h +0 -254
  332. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/regint.h +0 -1006
  333. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/regparse.h +0 -371
  334. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/revision.h +0 -5
  335. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/rjit.h +0 -101
  336. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/rjit_c.h +0 -165
  337. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/siphash.h +0 -48
  338. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/symbol.h +0 -123
  339. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/thread_win32.h +0 -58
  340. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/timev.h +0 -58
  341. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/transcode_data.h +0 -138
  342. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/variable.h +0 -39
  343. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/version.h +0 -69
  344. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm.inc +0 -5840
  345. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_call_iseq_optimized.inc +0 -244
  346. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_callinfo.h +0 -627
  347. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_exec.h +0 -199
  348. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_insnhelper.h +0 -277
  349. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_sync.h +0 -137
  350. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vmtc.inc +0 -259
  351. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/yjit.h +0 -79
  352. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/ccan/build_assert/build_assert.h +0 -0
  353. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/ccan/check_type/check_type.h +0 -0
  354. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/ccan/container_of/container_of.h +0 -0
  355. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/ccan/list/list.h +0 -0
  356. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/ccan/str/str.h +0 -0
  357. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/id_table.h +0 -0
  358. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/array.h +0 -0
  359. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/bignum.h +0 -0
  360. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/class.h +0 -0
  361. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/cmdlineopt.h +0 -0
  362. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/compar.h +0 -0
  363. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/compile.h +0 -0
  364. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/compilers.h +0 -0
  365. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/complex.h +0 -0
  366. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/cont.h +0 -0
  367. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/dir.h +0 -0
  368. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/enc.h +0 -0
  369. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/enum.h +0 -0
  370. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/enumerator.h +0 -0
  371. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/eval.h +0 -0
  372. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/file.h +0 -0
  373. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/hash.h +0 -0
  374. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/inits.h +0 -0
  375. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/load.h +0 -0
  376. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/loadpath.h +0 -0
  377. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/math.h +0 -0
  378. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/missing.h +0 -0
  379. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/numeric.h +0 -0
  380. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/object.h +0 -0
  381. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/process.h +0 -0
  382. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/random.h +0 -0
  383. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/range.h +0 -0
  384. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/rational.h +0 -0
  385. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/re.h +0 -0
  386. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/ruby_parser.h +0 -0
  387. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/serial.h +0 -0
  388. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/signal.h +0 -0
  389. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/st.h +0 -0
  390. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/static_assert.h +0 -0
  391. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/struct.h +0 -0
  392. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/symbol.h +0 -0
  393. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/time.h +0 -0
  394. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/transcode.h +0 -0
  395. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/util.h +0 -0
  396. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/variable.h +0 -0
  397. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/warnings.h +0 -0
  398. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal.h +0 -0
  399. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/iseq.h +0 -0
  400. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/node.h +0 -0
  401. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/parser_st.h +0 -0
  402. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/parser_value.h +0 -0
  403. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/encoding.h +0 -0
  404. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/node.h +0 -0
  405. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/options.h +0 -0
  406. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/pack.h +0 -0
  407. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/parser.h +0 -0
  408. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/prettyprint.h +0 -0
  409. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/regexp.h +0 -0
  410. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/static_literals.h +0 -0
  411. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/util/pm_buffer.h +0 -0
  412. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_char.h +0 -0
  413. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_constant_pool.h +0 -0
  414. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_integer.h +0 -0
  415. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/util/pm_list.h +0 -0
  416. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/util/pm_memchr.h +0 -0
  417. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_newline_list.h +0 -0
  418. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_string.h +0 -0
  419. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/util/pm_strncasecmp.h +0 -0
  420. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/util/pm_strpbrk.h +0 -0
  421. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/ruby_assert.h +0 -0
  422. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/ruby_atomic.h +0 -0
  423. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/shape.h +0 -0
  424. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/thread_none.h +0 -0
  425. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/vm_debug.h +0 -0
  426. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/vm_opts.h +0 -0
  427. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/ccan/build_assert/build_assert.h +0 -0
  428. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/ccan/check_type/check_type.h +0 -0
  429. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/ccan/container_of/container_of.h +0 -0
  430. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/ccan/list/list.h +0 -0
  431. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/ccan/str/str.h +0 -0
  432. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/id_table.h +0 -0
  433. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/bignum.h +0 -0
  434. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/compar.h +0 -0
  435. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/compile.h +0 -0
  436. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/compilers.h +0 -0
  437. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/complex.h +0 -0
  438. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/cont.h +0 -0
  439. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/dir.h +0 -0
  440. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/enc.h +0 -0
  441. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/enum.h +0 -0
  442. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/enumerator.h +0 -0
  443. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/eval.h +0 -0
  444. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/file.h +0 -0
  445. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/inits.h +0 -0
  446. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/load.h +0 -0
  447. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/loadpath.h +0 -0
  448. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/math.h +0 -0
  449. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/missing.h +0 -0
  450. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/numeric.h +0 -0
  451. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/object.h +0 -0
  452. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/process.h +0 -0
  453. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/random.h +0 -0
  454. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/range.h +0 -0
  455. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/rational.h +0 -0
  456. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/ruby_parser.h +0 -0
  457. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/serial.h +0 -0
  458. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/signal.h +0 -0
  459. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/st.h +0 -0
  460. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/static_assert.h +0 -0
  461. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/transcode.h +0 -0
  462. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/util.h +0 -0
  463. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal/warnings.h +0 -0
  464. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/internal.h +0 -0
  465. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/parser_st.h +0 -0
  466. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/parser_value.h +0 -0
  467. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/prism/encoding.h +0 -0
  468. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/prism/pack.h +0 -0
  469. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/prism/prettyprint.h +0 -0
  470. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/prism/util/pm_list.h +0 -0
  471. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/prism/util/pm_memchr.h +0 -0
  472. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/prism/util/pm_strncasecmp.h +0 -0
  473. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/prism/util/pm_strpbrk.h +0 -0
  474. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/ruby_assert.h +0 -0
  475. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/ruby_atomic.h +0 -0
  476. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/thread_none.h +0 -0
  477. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/vm_debug.h +0 -0
  478. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.5.0-preview1}/vm_opts.h +0 -0
@@ -23,8 +23,20 @@
23
23
  * some platforms they aren't included unless this is already defined.
24
24
  */
25
25
  #define __STDC_FORMAT_MACROS
26
+ // Include sys/types.h before inttypes.h to work around issue with
27
+ // certain versions of GCC and newlib which causes omission of PRIx64
28
+ #include <sys/types.h>
26
29
  #include <inttypes.h>
27
30
 
31
+ /**
32
+ * When we are parsing using recursive descent, we want to protect against
33
+ * malicious payloads that could attempt to crash our parser. We do this by
34
+ * specifying a maximum depth to which we are allowed to recurse.
35
+ */
36
+ #ifndef PRISM_DEPTH_MAXIMUM
37
+ #define PRISM_DEPTH_MAXIMUM 10000
38
+ #endif
39
+
28
40
  /**
29
41
  * By default, we compile with -fvisibility=hidden. When this is enabled, we
30
42
  * need to mark certain functions as being publically-visible. This macro does
@@ -119,14 +131,24 @@
119
131
  #endif
120
132
 
121
133
  /**
122
- * isinf on Windows is defined as accepting a float, but on POSIX systems it
123
- * accepts a float, a double, or a long double. We want to mirror this behavior
124
- * on windows.
134
+ * If PRISM_HAS_NO_FILESYSTEM is defined, then we want to exclude all filesystem
135
+ * related code from the library. All filesystem related code should be guarded
136
+ * by PRISM_HAS_FILESYSTEM.
125
137
  */
126
- #ifdef _WIN32
127
- # include <float.h>
128
- # undef isinf
129
- # define isinf(x) (sizeof(x) == sizeof(float) ? !_finitef(x) : !_finite(x))
138
+ #ifndef PRISM_HAS_NO_FILESYSTEM
139
+ # define PRISM_HAS_FILESYSTEM
140
+ #endif
141
+
142
+ /**
143
+ * isinf on POSIX systems it accepts a float, a double, or a long double.
144
+ * But mingw didn't provide an isinf macro, only an isinf function that only
145
+ * accepts floats, so we need to use _finite instead.
146
+ */
147
+ #ifdef __MINGW64__
148
+ #include <float.h>
149
+ #define PRISM_ISINF(x) (!_finite(x))
150
+ #else
151
+ #define PRISM_ISINF(x) isinf(x)
130
152
  #endif
131
153
 
132
154
  /**
@@ -203,4 +225,36 @@
203
225
  #define PRISM_ENCODING_EXCLUDE_FULL
204
226
  #endif
205
227
 
228
+ /**
229
+ * Support PRISM_LIKELY and PRISM_UNLIKELY to help the compiler optimize its
230
+ * branch predication.
231
+ */
232
+ #if defined(__GNUC__) || defined(__clang__)
233
+ /** The compiler should predicate that this branch will be taken. */
234
+ #define PRISM_LIKELY(x) __builtin_expect(!!(x), 1)
235
+
236
+ /** The compiler should predicate that this branch will not be taken. */
237
+ #define PRISM_UNLIKELY(x) __builtin_expect(!!(x), 0)
238
+ #else
239
+ /** Void because this platform does not support branch prediction hints. */
240
+ #define PRISM_LIKELY(x) (x)
241
+
242
+ /** Void because this platform does not support branch prediction hints. */
243
+ #define PRISM_UNLIKELY(x) (x)
244
+ #endif
245
+
246
+ /**
247
+ * We use -Wimplicit-fallthrough to guard potentially unintended fall-through between cases of a switch.
248
+ * Use PRISM_FALLTHROUGH to explicitly annotate cases where the fallthrough is intentional.
249
+ */
250
+ #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202311L // C23 or later
251
+ #define PRISM_FALLTHROUGH [[fallthrough]];
252
+ #elif defined(__GNUC__) || defined(__clang__)
253
+ #define PRISM_FALLTHROUGH __attribute__((fallthrough));
254
+ #elif defined(_MSC_VER)
255
+ #define PRISM_FALLTHROUGH __fallthrough;
256
+ #else
257
+ #define PRISM_FALLTHROUGH
258
+ #endif
259
+
206
260
  #endif
@@ -1,10 +1,10 @@
1
- /******************************************************************************/
1
+ /*----------------------------------------------------------------------------*/
2
2
  /* This file is generated by the templates/template.rb script and should not */
3
3
  /* be modified manually. See */
4
4
  /* templates/include/prism/diagnostic.h.erb */
5
5
  /* if you are looking to modify the */
6
6
  /* template */
7
- /******************************************************************************/
7
+ /*----------------------------------------------------------------------------*/
8
8
 
9
9
  /**
10
10
  * @file diagnostic.h
@@ -44,7 +44,6 @@ typedef enum {
44
44
  PM_ERR_ARGUMENT_FORMAL_GLOBAL,
45
45
  PM_ERR_ARGUMENT_FORMAL_IVAR,
46
46
  PM_ERR_ARGUMENT_FORWARDING_UNBOUND,
47
- PM_ERR_ARGUMENT_IN,
48
47
  PM_ERR_ARGUMENT_NO_FORWARDING_AMPERSAND,
49
48
  PM_ERR_ARGUMENT_NO_FORWARDING_ELLIPSES,
50
49
  PM_ERR_ARGUMENT_NO_FORWARDING_STAR,
@@ -110,8 +109,10 @@ typedef enum {
110
109
  PM_ERR_ESCAPE_INVALID_META_REPEAT,
111
110
  PM_ERR_ESCAPE_INVALID_UNICODE,
112
111
  PM_ERR_ESCAPE_INVALID_UNICODE_CM_FLAGS,
112
+ PM_ERR_ESCAPE_INVALID_UNICODE_LIST,
113
113
  PM_ERR_ESCAPE_INVALID_UNICODE_LITERAL,
114
114
  PM_ERR_ESCAPE_INVALID_UNICODE_LONG,
115
+ PM_ERR_ESCAPE_INVALID_UNICODE_SHORT,
115
116
  PM_ERR_ESCAPE_INVALID_UNICODE_TERM,
116
117
  PM_ERR_EXPECT_ARGUMENT,
117
118
  PM_ERR_EXPECT_EOL_AFTER_STATEMENT,
@@ -126,6 +127,7 @@ typedef enum {
126
127
  PM_ERR_EXPECT_EXPRESSION_AFTER_SPLAT,
127
128
  PM_ERR_EXPECT_EXPRESSION_AFTER_SPLAT_HASH,
128
129
  PM_ERR_EXPECT_EXPRESSION_AFTER_STAR,
130
+ PM_ERR_EXPECT_FOR_DELIMITER,
129
131
  PM_ERR_EXPECT_IDENT_REQ_PARAMETER,
130
132
  PM_ERR_EXPECT_IN_DELIMITER,
131
133
  PM_ERR_EXPECT_LPAREN_REQ_PARAMETER,
@@ -134,6 +136,7 @@ typedef enum {
134
136
  PM_ERR_EXPECT_RPAREN,
135
137
  PM_ERR_EXPECT_RPAREN_AFTER_MULTI,
136
138
  PM_ERR_EXPECT_RPAREN_REQ_PARAMETER,
139
+ PM_ERR_EXPECT_SINGLETON_CLASS_DELIMITER,
137
140
  PM_ERR_EXPECT_STRING_CONTENT,
138
141
  PM_ERR_EXPECT_WHEN_DELIMITER,
139
142
  PM_ERR_EXPRESSION_BARE_HASH,
@@ -143,6 +146,7 @@ typedef enum {
143
146
  PM_ERR_EXPRESSION_NOT_WRITABLE_FILE,
144
147
  PM_ERR_EXPRESSION_NOT_WRITABLE_LINE,
145
148
  PM_ERR_EXPRESSION_NOT_WRITABLE_NIL,
149
+ PM_ERR_EXPRESSION_NOT_WRITABLE_NUMBERED,
146
150
  PM_ERR_EXPRESSION_NOT_WRITABLE_SELF,
147
151
  PM_ERR_EXPRESSION_NOT_WRITABLE_TRUE,
148
152
  PM_ERR_FLOAT_PARSE,
@@ -166,6 +170,7 @@ typedef enum {
166
170
  PM_ERR_INSTANCE_VARIABLE_BARE,
167
171
  PM_ERR_INVALID_BLOCK_EXIT,
168
172
  PM_ERR_INVALID_CHARACTER,
173
+ PM_ERR_INVALID_COMMA,
169
174
  PM_ERR_INVALID_ENCODING_MAGIC_COMMENT,
170
175
  PM_ERR_INVALID_ESCAPE_CHARACTER,
171
176
  PM_ERR_INVALID_FLOAT_EXPONENT,
@@ -182,6 +187,7 @@ typedef enum {
182
187
  PM_ERR_INVALID_NUMBER_UNDERSCORE_INNER,
183
188
  PM_ERR_INVALID_NUMBER_UNDERSCORE_TRAILING,
184
189
  PM_ERR_INVALID_PERCENT,
190
+ PM_ERR_INVALID_PERCENT_EOF,
185
191
  PM_ERR_INVALID_PRINTABLE_CHARACTER,
186
192
  PM_ERR_INVALID_RETRY_AFTER_ELSE,
187
193
  PM_ERR_INVALID_RETRY_AFTER_ENSURE,
@@ -210,12 +216,15 @@ typedef enum {
210
216
  PM_ERR_MODULE_TERM,
211
217
  PM_ERR_MULTI_ASSIGN_MULTI_SPLATS,
212
218
  PM_ERR_MULTI_ASSIGN_UNEXPECTED_REST,
219
+ PM_ERR_NESTING_TOO_DEEP,
213
220
  PM_ERR_NO_LOCAL_VARIABLE,
221
+ PM_ERR_NON_ASSOCIATIVE_OPERATOR,
214
222
  PM_ERR_NOT_EXPRESSION,
215
223
  PM_ERR_NUMBER_LITERAL_UNDERSCORE,
224
+ PM_ERR_NUMBERED_PARAMETER_INNER_BLOCK,
216
225
  PM_ERR_NUMBERED_PARAMETER_IT,
217
226
  PM_ERR_NUMBERED_PARAMETER_ORDINARY,
218
- PM_ERR_NUMBERED_PARAMETER_OUTER_SCOPE,
227
+ PM_ERR_NUMBERED_PARAMETER_OUTER_BLOCK,
219
228
  PM_ERR_OPERATOR_MULTI_ASSIGN,
220
229
  PM_ERR_OPERATOR_WRITE_ARGUMENTS,
221
230
  PM_ERR_OPERATOR_WRITE_BLOCK,
@@ -232,8 +241,9 @@ typedef enum {
232
241
  PM_ERR_PARAMETER_SPLAT_MULTI,
233
242
  PM_ERR_PARAMETER_STAR,
234
243
  PM_ERR_PARAMETER_UNEXPECTED_FWD,
235
- PM_ERR_PARAMETER_WILD_LOOSE_COMMA,
236
244
  PM_ERR_PARAMETER_UNEXPECTED_NO_KW,
245
+ PM_ERR_PARAMETER_WILD_LOOSE_COMMA,
246
+ PM_ERR_PATTERN_ARRAY_MULTIPLE_RESTS,
237
247
  PM_ERR_PATTERN_CAPTURE_DUPLICATE,
238
248
  PM_ERR_PATTERN_EXPRESSION_AFTER_BRACKET,
239
249
  PM_ERR_PATTERN_EXPRESSION_AFTER_COMMA,
@@ -245,6 +255,7 @@ typedef enum {
245
255
  PM_ERR_PATTERN_EXPRESSION_AFTER_PIPE,
246
256
  PM_ERR_PATTERN_EXPRESSION_AFTER_RANGE,
247
257
  PM_ERR_PATTERN_EXPRESSION_AFTER_REST,
258
+ PM_ERR_PATTERN_FIND_MISSING_INNER,
248
259
  PM_ERR_PATTERN_HASH_IMPLICIT,
249
260
  PM_ERR_PATTERN_HASH_KEY,
250
261
  PM_ERR_PATTERN_HASH_KEY_DUPLICATE,
@@ -262,6 +273,7 @@ typedef enum {
262
273
  PM_ERR_REGEXP_INCOMPAT_CHAR_ENCODING,
263
274
  PM_ERR_REGEXP_INVALID_UNICODE_RANGE,
264
275
  PM_ERR_REGEXP_NON_ESCAPED_MBC,
276
+ PM_ERR_REGEXP_PARSE_ERROR,
265
277
  PM_ERR_REGEXP_TERM,
266
278
  PM_ERR_REGEXP_UNKNOWN_OPTIONS,
267
279
  PM_ERR_REGEXP_UTF8_CHAR_NON_UTF8_REGEXP,
@@ -286,11 +298,15 @@ typedef enum {
286
298
  PM_ERR_TERNARY_COLON,
287
299
  PM_ERR_TERNARY_EXPRESSION_FALSE,
288
300
  PM_ERR_TERNARY_EXPRESSION_TRUE,
301
+ PM_ERR_UNARY_DISALLOWED,
289
302
  PM_ERR_UNARY_RECEIVER,
290
303
  PM_ERR_UNDEF_ARGUMENT,
291
304
  PM_ERR_UNEXPECTED_BLOCK_ARGUMENT,
292
305
  PM_ERR_UNEXPECTED_INDEX_BLOCK,
293
306
  PM_ERR_UNEXPECTED_INDEX_KEYWORDS,
307
+ PM_ERR_UNEXPECTED_LABEL,
308
+ PM_ERR_UNEXPECTED_MULTI_WRITE,
309
+ PM_ERR_UNEXPECTED_RANGE_OPERATOR,
294
310
  PM_ERR_UNEXPECTED_SAFE_NAVIGATION,
295
311
  PM_ERR_UNEXPECTED_TOKEN_CLOSE_CONTEXT,
296
312
  PM_ERR_UNEXPECTED_TOKEN_IGNORE,
@@ -303,6 +319,7 @@ typedef enum {
303
319
  PM_ERR_XSTRING_TERM,
304
320
 
305
321
  // These are the warning diagnostics.
322
+ PM_WARN_AMBIGUOUS_BINARY_OPERATOR,
306
323
  PM_WARN_AMBIGUOUS_FIRST_ARGUMENT_MINUS,
307
324
  PM_WARN_AMBIGUOUS_FIRST_ARGUMENT_PLUS,
308
325
  PM_WARN_AMBIGUOUS_PREFIX_AMPERSAND,
@@ -318,10 +335,11 @@ typedef enum {
318
335
  PM_WARN_DUPLICATED_WHEN_CLAUSE,
319
336
  PM_WARN_FLOAT_OUT_OF_RANGE,
320
337
  PM_WARN_IGNORED_FROZEN_STRING_LITERAL,
338
+ PM_WARN_INDENTATION_MISMATCH,
321
339
  PM_WARN_INTEGER_IN_FLIP_FLOP,
322
340
  PM_WARN_INVALID_CHARACTER,
341
+ PM_WARN_INVALID_MAGIC_COMMENT_VALUE,
323
342
  PM_WARN_INVALID_NUMBERED_REFERENCE,
324
- PM_WARN_INVALID_SHAREABLE_CONSTANT_VALUE,
325
343
  PM_WARN_KEYWORD_EOL,
326
344
  PM_WARN_LITERAL_IN_CONDITION_DEFAULT,
327
345
  PM_WARN_LITERAL_IN_CONDITION_VERBOSE,
@@ -1,19 +1,19 @@
1
1
  #ifndef PRISM_EXT_NODE_H
2
2
  #define PRISM_EXT_NODE_H
3
3
 
4
- #define EXPECTED_PRISM_VERSION "0.29.0"
4
+ #define EXPECTED_PRISM_VERSION "1.4.0"
5
5
 
6
6
  #include <ruby.h>
7
7
  #include <ruby/encoding.h>
8
8
  #include "prism.h"
9
9
 
10
- VALUE pm_source_new(const pm_parser_t *parser, rb_encoding *encoding);
11
- VALUE pm_token_new(const pm_parser_t *parser, const pm_token_t *token, rb_encoding *encoding, VALUE source);
12
- VALUE pm_ast_new(const pm_parser_t *parser, const pm_node_t *node, rb_encoding *encoding, VALUE source);
10
+ VALUE pm_source_new(const pm_parser_t *parser, rb_encoding *encoding, bool freeze);
11
+ VALUE pm_token_new(const pm_parser_t *parser, const pm_token_t *token, rb_encoding *encoding, VALUE source, bool freeze);
12
+ VALUE pm_ast_new(const pm_parser_t *parser, const pm_node_t *node, rb_encoding *encoding, VALUE source, bool freeze);
13
13
  VALUE pm_integer_new(const pm_integer_t *integer);
14
14
 
15
15
  void Init_prism_api_node(void);
16
16
  void Init_prism_pack(void);
17
- PRISM_EXPORTED_FUNCTION void Init_prism(void);
17
+ RUBY_FUNC_EXPORTED void Init_prism(void);
18
18
 
19
19
  #endif
@@ -56,27 +56,6 @@ void pm_node_list_free(pm_node_list_t *list);
56
56
  */
57
57
  PRISM_EXPORTED_FUNCTION void pm_node_destroy(pm_parser_t *parser, struct pm_node *node);
58
58
 
59
- /**
60
- * This struct stores the information gathered by the pm_node_memsize function.
61
- * It contains both the memory footprint and additionally metadata about the
62
- * shape of the tree.
63
- */
64
- typedef struct {
65
- /** The total memory footprint of the node and all of its children. */
66
- size_t memsize;
67
-
68
- /** The number of children the node has. */
69
- size_t node_count;
70
- } pm_memsize_t;
71
-
72
- /**
73
- * Calculates the memory footprint of a given node.
74
- *
75
- * @param node The node to calculate the memory footprint of.
76
- * @param memsize The memory footprint of the node and all of its children.
77
- */
78
- PRISM_EXPORTED_FUNCTION void pm_node_memsize(pm_node_t *node, pm_memsize_t *memsize);
79
-
80
59
  /**
81
60
  * Returns a string representation of the given node type.
82
61
  *
@@ -7,6 +7,7 @@
7
7
  #define PRISM_OPTIONS_H
8
8
 
9
9
  #include "prism/defines.h"
10
+ #include "prism/util/pm_char.h"
10
11
  #include "prism/util/pm_string.h"
11
12
 
12
13
  #include <stdbool.h>
@@ -38,8 +39,43 @@ typedef struct pm_options_scope {
38
39
 
39
40
  /** The names of the locals in the scope. */
40
41
  pm_string_t *locals;
42
+
43
+ /** Flags for the set of forwarding parameters in this scope. */
44
+ uint8_t forwarding;
41
45
  } pm_options_scope_t;
42
46
 
47
+ /** The default value for parameters. */
48
+ static const uint8_t PM_OPTIONS_SCOPE_FORWARDING_NONE = 0x0;
49
+
50
+ /** When the scope is fowarding with the * parameter. */
51
+ static const uint8_t PM_OPTIONS_SCOPE_FORWARDING_POSITIONALS = 0x1;
52
+
53
+ /** When the scope is fowarding with the ** parameter. */
54
+ static const uint8_t PM_OPTIONS_SCOPE_FORWARDING_KEYWORDS = 0x2;
55
+
56
+ /** When the scope is fowarding with the & parameter. */
57
+ static const uint8_t PM_OPTIONS_SCOPE_FORWARDING_BLOCK = 0x4;
58
+
59
+ /** When the scope is fowarding with the ... parameter. */
60
+ static const uint8_t PM_OPTIONS_SCOPE_FORWARDING_ALL = 0x8;
61
+
62
+ // Forward declaration needed by the callback typedef.
63
+ struct pm_options;
64
+
65
+ /**
66
+ * The callback called when additional switches are found in a shebang comment
67
+ * that need to be processed by the runtime.
68
+ *
69
+ * @param options The options struct that may be updated by this callback.
70
+ * Certain fields will be checked for changes, specifically encoding,
71
+ * command_line, and frozen_string_literal.
72
+ * @param source The source of the shebang comment.
73
+ * @param length The length of the source.
74
+ * @param shebang_callback_data Any additional data that should be passed along
75
+ * to the callback.
76
+ */
77
+ typedef void (*pm_options_shebang_callback_t)(struct pm_options *options, const uint8_t *source, size_t length, void *shebang_callback_data);
78
+
43
79
  /**
44
80
  * The version of Ruby syntax that we should be parsing with. This is used to
45
81
  * allow consumers to specify which behavior they want in case they need to
@@ -50,13 +86,28 @@ typedef enum {
50
86
  PM_OPTIONS_VERSION_LATEST = 0,
51
87
 
52
88
  /** The vendored version of prism in CRuby 3.3.x. */
53
- PM_OPTIONS_VERSION_CRUBY_3_3 = 1
89
+ PM_OPTIONS_VERSION_CRUBY_3_3 = 1,
90
+
91
+ /** The vendored version of prism in CRuby 3.4.x. */
92
+ PM_OPTIONS_VERSION_CRUBY_3_4 = 2
54
93
  } pm_options_version_t;
55
94
 
56
95
  /**
57
96
  * The options that can be passed to the parser.
58
97
  */
59
- typedef struct {
98
+ typedef struct pm_options {
99
+ /**
100
+ * The callback to call when additional switches are found in a shebang
101
+ * comment.
102
+ */
103
+ pm_options_shebang_callback_t shebang_callback;
104
+
105
+ /**
106
+ * Any additional data that should be passed along to the shebang callback
107
+ * if one was set.
108
+ */
109
+ void *shebang_callback_data;
110
+
60
111
  /** The name of the file that is currently being parsed. */
61
112
  pm_string_t filepath;
62
113
 
@@ -103,6 +154,37 @@ typedef struct {
103
154
  * - PM_OPTIONS_FROZEN_STRING_LITERAL_UNSET
104
155
  */
105
156
  int8_t frozen_string_literal;
157
+
158
+ /**
159
+ * Whether or not the encoding magic comments should be respected. This is a
160
+ * niche use-case where you want to parse a file with a specific encoding
161
+ * but ignore any encoding magic comments at the top of the file.
162
+ */
163
+ bool encoding_locked;
164
+
165
+ /**
166
+ * When the file being parsed is the main script, the shebang will be
167
+ * considered for command-line flags (or for implicit -x). The caller needs
168
+ * to pass this information to the parser so that it can behave correctly.
169
+ */
170
+ bool main_script;
171
+
172
+ /**
173
+ * When the file being parsed is considered a "partial" script, jumps will
174
+ * not be marked as errors if they are not contained within loops/blocks.
175
+ * This is used in the case that you're parsing a script that you know will
176
+ * be embedded inside another script later, but you do not have that context
177
+ * yet. For example, when parsing an ERB template that will be evaluated
178
+ * inside another script.
179
+ */
180
+ bool partial_script;
181
+
182
+ /**
183
+ * Whether or not the parser should freeze the nodes that it creates. This
184
+ * makes it possible to have a deeply frozen AST that is safe to share
185
+ * between concurrency primitives.
186
+ */
187
+ bool freeze;
106
188
  } pm_options_t;
107
189
 
108
190
  /**
@@ -142,6 +224,16 @@ static const uint8_t PM_OPTIONS_COMMAND_LINE_P = 0x10;
142
224
  */
143
225
  static const uint8_t PM_OPTIONS_COMMAND_LINE_X = 0x20;
144
226
 
227
+ /**
228
+ * Set the shebang callback option on the given options struct.
229
+ *
230
+ * @param options The options struct to set the shebang callback on.
231
+ * @param shebang_callback The shebang callback to set.
232
+ * @param shebang_callback_data Any additional data that should be passed along
233
+ * to the callback.
234
+ */
235
+ PRISM_EXPORTED_FUNCTION void pm_options_shebang_callback_set(pm_options_t *options, pm_options_shebang_callback_t shebang_callback, void *shebang_callback_data);
236
+
145
237
  /**
146
238
  * Set the filepath option on the given options struct.
147
239
  *
@@ -166,6 +258,14 @@ PRISM_EXPORTED_FUNCTION void pm_options_line_set(pm_options_t *options, int32_t
166
258
  */
167
259
  PRISM_EXPORTED_FUNCTION void pm_options_encoding_set(pm_options_t *options, const char *encoding);
168
260
 
261
+ /**
262
+ * Set the encoding_locked option on the given options struct.
263
+ *
264
+ * @param options The options struct to set the encoding_locked value on.
265
+ * @param encoding_locked The encoding_locked value to set.
266
+ */
267
+ PRISM_EXPORTED_FUNCTION void pm_options_encoding_locked_set(pm_options_t *options, bool encoding_locked);
268
+
169
269
  /**
170
270
  * Set the frozen string literal option on the given options struct.
171
271
  *
@@ -194,6 +294,30 @@ PRISM_EXPORTED_FUNCTION void pm_options_command_line_set(pm_options_t *options,
194
294
  */
195
295
  PRISM_EXPORTED_FUNCTION bool pm_options_version_set(pm_options_t *options, const char *version, size_t length);
196
296
 
297
+ /**
298
+ * Set the main script option on the given options struct.
299
+ *
300
+ * @param options The options struct to set the main script value on.
301
+ * @param main_script The main script value to set.
302
+ */
303
+ PRISM_EXPORTED_FUNCTION void pm_options_main_script_set(pm_options_t *options, bool main_script);
304
+
305
+ /**
306
+ * Set the partial script option on the given options struct.
307
+ *
308
+ * @param options The options struct to set the partial script value on.
309
+ * @param partial_script The partial script value to set.
310
+ */
311
+ PRISM_EXPORTED_FUNCTION void pm_options_partial_script_set(pm_options_t *options, bool partial_script);
312
+
313
+ /**
314
+ * Set the freeze option on the given options struct.
315
+ *
316
+ * @param options The options struct to set the freeze value on.
317
+ * @param freeze The freeze value to set.
318
+ */
319
+ PRISM_EXPORTED_FUNCTION void pm_options_freeze_set(pm_options_t *options, bool freeze);
320
+
197
321
  /**
198
322
  * Allocate and zero out the scopes array on the given options struct.
199
323
  *
@@ -231,6 +355,14 @@ PRISM_EXPORTED_FUNCTION bool pm_options_scope_init(pm_options_scope_t *scope, si
231
355
  */
232
356
  PRISM_EXPORTED_FUNCTION const pm_string_t * pm_options_scope_local_get(const pm_options_scope_t *scope, size_t index);
233
357
 
358
+ /**
359
+ * Set the forwarding option on the given scope struct.
360
+ *
361
+ * @param scope The scope struct to set the forwarding on.
362
+ * @param forwarding The forwarding value to set.
363
+ */
364
+ PRISM_EXPORTED_FUNCTION void pm_options_scope_forwarding_set(pm_options_scope_t *scope, uint8_t forwarding);
365
+
234
366
  /**
235
367
  * Free the internal memory associated with the options.
236
368
  *
@@ -261,6 +393,10 @@ PRISM_EXPORTED_FUNCTION void pm_options_free(pm_options_t *options);
261
393
  * | `1` | -l command line option |
262
394
  * | `1` | -a command line option |
263
395
  * | `1` | the version |
396
+ * | `1` | encoding locked |
397
+ * | `1` | main script |
398
+ * | `1` | partial script |
399
+ * | `1` | freeze |
264
400
  * | `4` | the number of scopes |
265
401
  * | ... | the scopes |
266
402
  *
@@ -276,6 +412,7 @@ PRISM_EXPORTED_FUNCTION void pm_options_free(pm_options_t *options);
276
412
  * | # bytes | field |
277
413
  * | ------- | -------------------------- |
278
414
  * | `4` | the number of locals |
415
+ * | `1` | the forwarding flags |
279
416
  * | ... | the locals |
280
417
  *
281
418
  * Each local is laid out as follows:
@@ -293,8 +430,8 @@ PRISM_EXPORTED_FUNCTION void pm_options_free(pm_options_t *options);
293
430
  * * The encoding can have a length of 0, in which case we'll use the default
294
431
  * encoding (UTF-8). If it's not 0, it should correspond to a name of an
295
432
  * encoding that can be passed to `Encoding.find` in Ruby.
296
- * * The frozen string literal and suppress warnings fields are booleans, so
297
- * their values should be either 0 or 1.
433
+ * * The frozen string literal, encoding locked, main script, and partial script
434
+ * fields are booleans, so their values should be either 0 or 1.
298
435
  * * The number of scopes can be 0.
299
436
  *
300
437
  * @param options The options struct to deserialize into.