datadog-ruby_core_source 3.3.6 → 3.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (476) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.datadog.md +12 -1
  3. data/datadog-ruby_core_source.gemspec +7 -2
  4. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/id.h +5 -0
  5. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/basic_operators.h +1 -0
  6. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/bits.h +82 -0
  7. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/encoding.h +2 -0
  8. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/error.h +26 -0
  9. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/fixnum.h +1 -0
  10. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/gc.h +14 -6
  11. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/imemo.h +6 -1
  12. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/io.h +1 -1
  13. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/parse.h +2 -1
  14. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/proc.h +1 -0
  15. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/ractor.h +4 -0
  16. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/sanitizers.h +31 -39
  17. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/string.h +22 -10
  18. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/thread.h +23 -0
  19. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/vm.h +1 -1
  20. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/method.h +1 -0
  21. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/ast.h +427 -3
  22. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/defines.h +8 -7
  23. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/diagnostic.h +1 -0
  24. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/extension.h +1 -1
  25. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/prism.h +47 -11
  26. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/version.h +2 -2
  27. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism_compile.h +5 -5
  28. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/ractor_core.h +6 -6
  29. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/rubyparser.h +3 -2
  30. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/thread_pthread.h +0 -1
  31. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/vm_core.h +40 -12
  32. data/lib/datadog/ruby_core_source/version.rb +1 -1
  33. data/lib/datadog/ruby_core_source.rb +14 -1
  34. metadata +110 -476
  35. data/.github/workflows/publish.yml +0 -18
  36. data/.gitignore +0 -7
  37. data/.idea/vcs.xml +0 -28
  38. data/CHANGELOG.md +0 -284
  39. data/CONTRIBUTING.md +0 -2
  40. data/Gemfile +0 -4
  41. data/Rakefile +0 -73
  42. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/addr2line.h +0 -21
  43. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/constant.h +0 -50
  44. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/debug_counter.h +0 -109
  45. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/dln.h +0 -51
  46. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/encindex.h +0 -69
  47. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/eval_intern.h +0 -334
  48. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/gc.h +0 -116
  49. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/id_table.h +0 -31
  50. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/insns.inc +0 -217
  51. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/insns_info.inc +0 -1570
  52. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/known_errors.inc +0 -746
  53. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/node_name.inc +0 -198
  54. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/opt_sc.inc +0 -1601
  55. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/optinsn.inc +0 -103
  56. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/optunifs.inc +0 -61
  57. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/parse.h +0 -206
  58. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/probes_helper.h +0 -43
  59. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/regenc.h +0 -254
  60. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/regint.h +0 -938
  61. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/regparse.h +0 -370
  62. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/revision.h +0 -1
  63. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/siphash.h +0 -48
  64. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/symbol.h +0 -108
  65. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/thread_win32.h +0 -36
  66. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/timev.h +0 -42
  67. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/transcode_data.h +0 -139
  68. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/version.h +0 -73
  69. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/vm.inc +0 -3667
  70. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/vm_call_iseq_optimized.inc +0 -213
  71. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/vm_exec.h +0 -192
  72. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/vm_insnhelper.h +0 -255
  73. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/vmtc.inc +0 -214
  74. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/addr2line.h +0 -21
  75. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/constant.h +0 -51
  76. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/debug_counter.h +0 -109
  77. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/dln.h +0 -51
  78. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/encindex.h +0 -69
  79. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/eval_intern.h +0 -334
  80. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/gc.h +0 -116
  81. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/id_table.h +0 -31
  82. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/insns.inc +0 -217
  83. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/insns_info.inc +0 -1570
  84. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/known_errors.inc +0 -746
  85. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/node_name.inc +0 -198
  86. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/opt_sc.inc +0 -1601
  87. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/optinsn.inc +0 -103
  88. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/optunifs.inc +0 -61
  89. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/parse.h +0 -206
  90. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/probes_helper.h +0 -43
  91. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/regenc.h +0 -254
  92. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/regint.h +0 -938
  93. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/regparse.h +0 -370
  94. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/revision.h +0 -1
  95. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/siphash.h +0 -48
  96. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/symbol.h +0 -108
  97. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/thread_win32.h +0 -36
  98. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/timev.h +0 -42
  99. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/transcode_data.h +0 -139
  100. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/version.h +0 -73
  101. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/vm.inc +0 -3667
  102. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/vm_call_iseq_optimized.inc +0 -213
  103. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/vm_exec.h +0 -192
  104. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/vm_insnhelper.h +0 -255
  105. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/vmtc.inc +0 -214
  106. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/addr2line.h +0 -21
  107. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/constant.h +0 -51
  108. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/debug_counter.h +0 -109
  109. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/dln.h +0 -51
  110. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/encindex.h +0 -69
  111. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/eval_intern.h +0 -334
  112. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/gc.h +0 -116
  113. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/id_table.h +0 -31
  114. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/insns.inc +0 -217
  115. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/insns_info.inc +0 -1570
  116. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/known_errors.inc +0 -746
  117. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/node_name.inc +0 -198
  118. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/opt_sc.inc +0 -1601
  119. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/optinsn.inc +0 -103
  120. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/optunifs.inc +0 -61
  121. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/parse.h +0 -200
  122. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/probes_helper.h +0 -43
  123. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/regenc.h +0 -254
  124. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/regint.h +0 -938
  125. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/regparse.h +0 -370
  126. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/revision.h +0 -1
  127. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/siphash.h +0 -48
  128. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/symbol.h +0 -108
  129. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/thread_win32.h +0 -36
  130. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/timev.h +0 -42
  131. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/transcode_data.h +0 -139
  132. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/version.h +0 -73
  133. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/vm.inc +0 -3667
  134. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/vm_call_iseq_optimized.inc +0 -213
  135. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/vm_exec.h +0 -192
  136. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/vm_insnhelper.h +0 -255
  137. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/vmtc.inc +0 -214
  138. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/addr2line.h +0 -22
  139. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/builtin.h +0 -117
  140. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/constant.h +0 -53
  141. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/darray.h +0 -246
  142. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/debug_counter.h +0 -423
  143. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/dln.h +0 -32
  144. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/encindex.h +0 -70
  145. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/eval_intern.h +0 -343
  146. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/hrtime.h +0 -227
  147. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/insns.inc +0 -251
  148. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/insns_info.inc +0 -9215
  149. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/known_errors.inc +0 -791
  150. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/node_name.inc +0 -212
  151. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/optinsn.inc +0 -128
  152. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/optunifs.inc +0 -43
  153. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/parse.h +0 -243
  154. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/parser_bits.h +0 -564
  155. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/parser_node.h +0 -32
  156. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/probes_helper.h +0 -42
  157. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/regenc.h +0 -254
  158. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/regint.h +0 -1004
  159. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/regparse.h +0 -371
  160. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/revision.h +0 -5
  161. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/rjit.h +0 -101
  162. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/rjit_c.h +0 -164
  163. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/siphash.h +0 -48
  164. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/symbol.h +0 -118
  165. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/thread_win32.h +0 -58
  166. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/timev.h +0 -58
  167. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/transcode_data.h +0 -138
  168. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/variable.h +0 -39
  169. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/version.h +0 -69
  170. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm.inc +0 -5436
  171. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm_call_iseq_optimized.inc +0 -244
  172. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm_callinfo.h +0 -619
  173. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm_exec.h +0 -199
  174. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm_insnhelper.h +0 -261
  175. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm_sync.h +0 -137
  176. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vmtc.inc +0 -245
  177. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/yjit.h +0 -72
  178. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/addr2line.h +0 -22
  179. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/builtin.h +0 -117
  180. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/constant.h +0 -53
  181. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/darray.h +0 -246
  182. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/debug_counter.h +0 -423
  183. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/dln.h +0 -32
  184. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/encindex.h +0 -70
  185. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/eval_intern.h +0 -343
  186. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/hrtime.h +0 -227
  187. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/insns.inc +0 -251
  188. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/insns_info.inc +0 -9215
  189. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/known_errors.inc +0 -791
  190. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/node_name.inc +0 -212
  191. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/optinsn.inc +0 -128
  192. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/optunifs.inc +0 -43
  193. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/parse.h +0 -243
  194. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/parser_bits.h +0 -564
  195. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/parser_node.h +0 -32
  196. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/probes_helper.h +0 -42
  197. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/regenc.h +0 -254
  198. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/regint.h +0 -1006
  199. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/regparse.h +0 -371
  200. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/revision.h +0 -5
  201. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/rjit.h +0 -101
  202. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/rjit_c.h +0 -164
  203. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/siphash.h +0 -48
  204. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/symbol.h +0 -118
  205. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/thread_win32.h +0 -58
  206. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/timev.h +0 -58
  207. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/transcode_data.h +0 -138
  208. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/variable.h +0 -39
  209. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/version.h +0 -69
  210. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm.inc +0 -5436
  211. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm_call_iseq_optimized.inc +0 -244
  212. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm_callinfo.h +0 -614
  213. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm_exec.h +0 -199
  214. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm_insnhelper.h +0 -261
  215. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm_sync.h +0 -137
  216. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vmtc.inc +0 -245
  217. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/yjit.h +0 -72
  218. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/addr2line.h +0 -22
  219. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/builtin.h +0 -119
  220. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/constant.h +0 -53
  221. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/darray.h +0 -191
  222. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/debug_counter.h +0 -423
  223. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/dln.h +0 -34
  224. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/encindex.h +0 -70
  225. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/eval_intern.h +0 -324
  226. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/hrtime.h +0 -237
  227. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/id.h +0 -343
  228. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/insns.inc +0 -259
  229. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/insns_info.inc +0 -9530
  230. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/array.h +0 -151
  231. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/basic_operators.h +0 -63
  232. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/bits.h +0 -568
  233. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/class.h +0 -283
  234. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/error.h +0 -216
  235. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/fixnum.h +0 -184
  236. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/gc.h +0 -334
  237. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/hash.h +0 -191
  238. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/imemo.h +0 -260
  239. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/io.h +0 -140
  240. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/parse.h +0 -117
  241. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/sanitizers.h +0 -297
  242. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/string.h +0 -182
  243. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/thread.h +0 -79
  244. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/vm.h +0 -137
  245. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/known_errors.inc +0 -1419
  246. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/node_name.inc +0 -224
  247. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/optinsn.inc +0 -128
  248. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/optunifs.inc +0 -43
  249. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/parse.h +0 -243
  250. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/parser_bits.h +0 -564
  251. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/parser_node.h +0 -32
  252. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/ast.h +0 -6245
  253. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/defines.h +0 -206
  254. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/diagnostic.h +0 -433
  255. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/extension.h +0 -19
  256. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/node.h +0 -150
  257. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/options.h +0 -305
  258. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/parser.h +0 -891
  259. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/regexp.h +0 -33
  260. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/static_literals.h +0 -120
  261. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/util/pm_char.h +0 -205
  262. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/util/pm_constant_pool.h +0 -226
  263. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/util/pm_integer.h +0 -119
  264. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/util/pm_newline_list.h +0 -102
  265. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/util/pm_string.h +0 -174
  266. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/util/pm_string_list.h +0 -44
  267. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/version.h +0 -29
  268. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism_compile.h +0 -88
  269. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/probes_helper.h +0 -42
  270. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/ractor_core.h +0 -393
  271. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/regenc.h +0 -254
  272. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/regint.h +0 -1010
  273. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/regparse.h +0 -371
  274. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/revision.h +0 -5
  275. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/rjit.h +0 -101
  276. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/rjit_c.h +0 -165
  277. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/rubyparser.h +0 -1430
  278. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/shape.h +0 -233
  279. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/siphash.h +0 -48
  280. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/symbol.h +0 -118
  281. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/thread_pthread.h +0 -166
  282. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/thread_win32.h +0 -58
  283. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/timev.h +0 -58
  284. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/transcode_data.h +0 -138
  285. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/variable.h +0 -39
  286. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/version.h +0 -69
  287. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm.inc +0 -5643
  288. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm_call_iseq_optimized.inc +0 -244
  289. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm_callinfo.h +0 -605
  290. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm_core.h +0 -2236
  291. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm_exec.h +0 -199
  292. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm_insnhelper.h +0 -272
  293. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm_sync.h +0 -137
  294. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vmtc.inc +0 -253
  295. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/yjit.h +0 -79
  296. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/addr2line.h +0 -22
  297. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/builtin.h +0 -119
  298. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/ccan/build_assert/build_assert.h +0 -40
  299. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/ccan/check_type/check_type.h +0 -63
  300. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/ccan/container_of/container_of.h +0 -142
  301. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/ccan/list/list.h +0 -791
  302. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/ccan/str/str.h +0 -17
  303. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/constant.h +0 -53
  304. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/darray.h +0 -209
  305. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/debug_counter.h +0 -423
  306. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/dln.h +0 -32
  307. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/encindex.h +0 -70
  308. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/eval_intern.h +0 -324
  309. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/hrtime.h +0 -237
  310. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/id_table.h +0 -39
  311. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/insns.inc +0 -265
  312. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/insns_info.inc +0 -9902
  313. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/bignum.h +0 -244
  314. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/cmdlineopt.h +0 -65
  315. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/compar.h +0 -29
  316. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/compile.h +0 -34
  317. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/compilers.h +0 -107
  318. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/complex.h +0 -29
  319. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/cont.h +0 -35
  320. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/dir.h +0 -16
  321. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/enc.h +0 -19
  322. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/encoding.h +0 -36
  323. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/enum.h +0 -18
  324. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/enumerator.h +0 -21
  325. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/eval.h +0 -33
  326. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/file.h +0 -38
  327. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/inits.h +0 -47
  328. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/load.h +0 -18
  329. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/loadpath.h +0 -16
  330. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/math.h +0 -23
  331. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/missing.h +0 -19
  332. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/numeric.h +0 -274
  333. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/object.h +0 -63
  334. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/proc.h +0 -30
  335. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/process.h +0 -124
  336. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/ractor.h +0 -6
  337. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/random.h +0 -17
  338. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/range.h +0 -40
  339. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/rational.h +0 -71
  340. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/re.h +0 -28
  341. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/ruby_parser.h +0 -102
  342. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/serial.h +0 -23
  343. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/signal.h +0 -24
  344. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/st.h +0 -11
  345. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/static_assert.h +0 -16
  346. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/struct.h +0 -127
  347. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/symbol.h +0 -45
  348. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/time.h +0 -34
  349. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/transcode.h +0 -23
  350. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/util.h +0 -27
  351. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/variable.h +0 -72
  352. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/warnings.h +0 -16
  353. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal.h +0 -108
  354. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/iseq.h +0 -340
  355. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/known_errors.inc +0 -1419
  356. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/method.h +0 -255
  357. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/node.h +0 -111
  358. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/node_name.inc +0 -224
  359. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/optinsn.inc +0 -128
  360. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/optunifs.inc +0 -43
  361. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/parse.h +0 -244
  362. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/parser_bits.h +0 -564
  363. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/parser_node.h +0 -32
  364. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/parser_st.h +0 -162
  365. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/parser_value.h +0 -106
  366. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/prism/encoding.h +0 -283
  367. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/prism/pack.h +0 -163
  368. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/prism/prettyprint.h +0 -34
  369. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/prism/prism.h +0 -336
  370. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_buffer.h +0 -218
  371. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_list.h +0 -97
  372. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_memchr.h +0 -29
  373. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_strncasecmp.h +0 -32
  374. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_strpbrk.h +0 -46
  375. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/probes_helper.h +0 -42
  376. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/regenc.h +0 -254
  377. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/regint.h +0 -1006
  378. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/regparse.h +0 -371
  379. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/revision.h +0 -5
  380. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/rjit.h +0 -101
  381. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/rjit_c.h +0 -165
  382. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/ruby_assert.h +0 -14
  383. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/ruby_atomic.h +0 -23
  384. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/siphash.h +0 -48
  385. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/symbol.h +0 -123
  386. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/thread_none.h +0 -21
  387. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/thread_win32.h +0 -58
  388. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/timev.h +0 -58
  389. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/transcode_data.h +0 -138
  390. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/variable.h +0 -39
  391. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/version.h +0 -69
  392. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm.inc +0 -5840
  393. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_call_iseq_optimized.inc +0 -244
  394. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_callinfo.h +0 -627
  395. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_debug.h +0 -124
  396. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_exec.h +0 -199
  397. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_insnhelper.h +0 -277
  398. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_opts.h +0 -67
  399. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_sync.h +0 -137
  400. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vmtc.inc +0 -259
  401. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/yjit.h +0 -79
  402. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/ccan/build_assert/build_assert.h +0 -0
  403. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/ccan/check_type/check_type.h +0 -0
  404. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/ccan/container_of/container_of.h +0 -0
  405. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/ccan/list/list.h +0 -0
  406. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/ccan/str/str.h +0 -0
  407. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/id_table.h +0 -0
  408. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/array.h +0 -0
  409. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/bignum.h +0 -0
  410. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/class.h +0 -0
  411. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/cmdlineopt.h +0 -0
  412. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/compar.h +0 -0
  413. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/compile.h +0 -0
  414. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/compilers.h +0 -0
  415. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/complex.h +0 -0
  416. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/cont.h +0 -0
  417. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/dir.h +0 -0
  418. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/enc.h +0 -0
  419. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/enum.h +0 -0
  420. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/enumerator.h +0 -0
  421. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/eval.h +0 -0
  422. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/file.h +0 -0
  423. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/hash.h +0 -0
  424. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/inits.h +0 -0
  425. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/load.h +0 -0
  426. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/loadpath.h +0 -0
  427. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/math.h +0 -0
  428. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/missing.h +0 -0
  429. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/numeric.h +0 -0
  430. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/object.h +0 -0
  431. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/process.h +0 -0
  432. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/random.h +0 -0
  433. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/range.h +0 -0
  434. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/rational.h +0 -0
  435. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/re.h +0 -0
  436. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/ruby_parser.h +0 -0
  437. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/serial.h +0 -0
  438. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/signal.h +0 -0
  439. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/st.h +0 -0
  440. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/static_assert.h +0 -0
  441. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/struct.h +0 -0
  442. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/symbol.h +0 -0
  443. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/time.h +0 -0
  444. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/transcode.h +0 -0
  445. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/util.h +0 -0
  446. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/variable.h +0 -0
  447. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/warnings.h +0 -0
  448. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal.h +0 -0
  449. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/iseq.h +0 -0
  450. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/node.h +0 -0
  451. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/parser_st.h +0 -0
  452. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/parser_value.h +0 -0
  453. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/encoding.h +0 -0
  454. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/node.h +0 -0
  455. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/options.h +0 -0
  456. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/pack.h +0 -0
  457. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/parser.h +0 -0
  458. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/prettyprint.h +0 -0
  459. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/regexp.h +0 -0
  460. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/static_literals.h +0 -0
  461. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/util/pm_buffer.h +0 -0
  462. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_char.h +0 -0
  463. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_constant_pool.h +0 -0
  464. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_integer.h +0 -0
  465. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/util/pm_list.h +0 -0
  466. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/util/pm_memchr.h +0 -0
  467. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_newline_list.h +0 -0
  468. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_string.h +0 -0
  469. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/util/pm_strncasecmp.h +0 -0
  470. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/util/pm_strpbrk.h +0 -0
  471. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/ruby_assert.h +0 -0
  472. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/ruby_atomic.h +0 -0
  473. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/shape.h +0 -0
  474. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/thread_none.h +0 -0
  475. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/vm_debug.h +0 -0
  476. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/vm_opts.h +0 -0
@@ -1,163 +0,0 @@
1
- /**
2
- * @file pack.h
3
- *
4
- * A pack template string parser.
5
- */
6
- #ifndef PRISM_PACK_H
7
- #define PRISM_PACK_H
8
-
9
- #include "prism/defines.h"
10
-
11
- // We optionally support parsing String#pack templates. For systems that don't
12
- // want or need this functionality, it can be turned off with the
13
- // PRISM_EXCLUDE_PACK define.
14
- #ifdef PRISM_EXCLUDE_PACK
15
-
16
- void pm_pack_parse(void);
17
-
18
- #else
19
-
20
- #include <stdint.h>
21
- #include <stdlib.h>
22
-
23
- /** The version of the pack template language that we are parsing. */
24
- typedef enum pm_pack_version {
25
- PM_PACK_VERSION_3_2_0
26
- } pm_pack_version;
27
-
28
- /** The type of pack template we are parsing. */
29
- typedef enum pm_pack_variant {
30
- PM_PACK_VARIANT_PACK,
31
- PM_PACK_VARIANT_UNPACK
32
- } pm_pack_variant;
33
-
34
- /** A directive within the pack template. */
35
- typedef enum pm_pack_type {
36
- PM_PACK_SPACE,
37
- PM_PACK_COMMENT,
38
- PM_PACK_INTEGER,
39
- PM_PACK_UTF8,
40
- PM_PACK_BER,
41
- PM_PACK_FLOAT,
42
- PM_PACK_STRING_SPACE_PADDED,
43
- PM_PACK_STRING_NULL_PADDED,
44
- PM_PACK_STRING_NULL_TERMINATED,
45
- PM_PACK_STRING_MSB,
46
- PM_PACK_STRING_LSB,
47
- PM_PACK_STRING_HEX_HIGH,
48
- PM_PACK_STRING_HEX_LOW,
49
- PM_PACK_STRING_UU,
50
- PM_PACK_STRING_MIME,
51
- PM_PACK_STRING_BASE64,
52
- PM_PACK_STRING_FIXED,
53
- PM_PACK_STRING_POINTER,
54
- PM_PACK_MOVE,
55
- PM_PACK_BACK,
56
- PM_PACK_NULL,
57
- PM_PACK_END
58
- } pm_pack_type;
59
-
60
- /** The signness of a pack directive. */
61
- typedef enum pm_pack_signed {
62
- PM_PACK_UNSIGNED,
63
- PM_PACK_SIGNED,
64
- PM_PACK_SIGNED_NA
65
- } pm_pack_signed;
66
-
67
- /** The endianness of a pack directive. */
68
- typedef enum pm_pack_endian {
69
- PM_PACK_AGNOSTIC_ENDIAN,
70
- PM_PACK_LITTLE_ENDIAN, // aka 'VAX', or 'V'
71
- PM_PACK_BIG_ENDIAN, // aka 'network', or 'N'
72
- PM_PACK_NATIVE_ENDIAN,
73
- PM_PACK_ENDIAN_NA
74
- } pm_pack_endian;
75
-
76
- /** The size of an integer pack directive. */
77
- typedef enum pm_pack_size {
78
- PM_PACK_SIZE_SHORT,
79
- PM_PACK_SIZE_INT,
80
- PM_PACK_SIZE_LONG,
81
- PM_PACK_SIZE_LONG_LONG,
82
- PM_PACK_SIZE_8,
83
- PM_PACK_SIZE_16,
84
- PM_PACK_SIZE_32,
85
- PM_PACK_SIZE_64,
86
- PM_PACK_SIZE_P,
87
- PM_PACK_SIZE_NA
88
- } pm_pack_size;
89
-
90
- /** The type of length of a pack directive. */
91
- typedef enum pm_pack_length_type {
92
- PM_PACK_LENGTH_FIXED,
93
- PM_PACK_LENGTH_MAX,
94
- PM_PACK_LENGTH_RELATIVE, // special case for unpack @*
95
- PM_PACK_LENGTH_NA
96
- } pm_pack_length_type;
97
-
98
- /** The type of encoding for a pack template string. */
99
- typedef enum pm_pack_encoding {
100
- PM_PACK_ENCODING_START,
101
- PM_PACK_ENCODING_ASCII_8BIT,
102
- PM_PACK_ENCODING_US_ASCII,
103
- PM_PACK_ENCODING_UTF_8
104
- } pm_pack_encoding;
105
-
106
- /** The result of parsing a pack template. */
107
- typedef enum pm_pack_result {
108
- PM_PACK_OK,
109
- PM_PACK_ERROR_UNSUPPORTED_DIRECTIVE,
110
- PM_PACK_ERROR_UNKNOWN_DIRECTIVE,
111
- PM_PACK_ERROR_LENGTH_TOO_BIG,
112
- PM_PACK_ERROR_BANG_NOT_ALLOWED,
113
- PM_PACK_ERROR_DOUBLE_ENDIAN
114
- } pm_pack_result;
115
-
116
- /**
117
- * Parse a single directive from a pack or unpack format string.
118
- *
119
- * @param variant (in) pack or unpack
120
- * @param format (in, out) the start of the next directive to parse on calling,
121
- * and advanced beyond the parsed directive on return, or as much of it as
122
- * was consumed until an error was encountered
123
- * @param format_end (in) the end of the format string
124
- * @param type (out) the type of the directive
125
- * @param signed_type (out) whether the value is signed
126
- * @param endian (out) the endianness of the value
127
- * @param size (out) the size of the value
128
- * @param length_type (out) what kind of length is specified
129
- * @param length (out) the length of the directive
130
- * @param encoding (in, out) takes the current encoding of the string which
131
- * would result from parsing the whole format string, and returns a possibly
132
- * changed directive - the encoding should be `PM_PACK_ENCODING_START` when
133
- * pm_pack_parse is called for the first directive in a format string
134
- *
135
- * @return `PM_PACK_OK` on success or `PM_PACK_ERROR_*` on error
136
- * @note Consult Ruby documentation for the meaning of directives.
137
- */
138
- PRISM_EXPORTED_FUNCTION pm_pack_result
139
- pm_pack_parse(
140
- pm_pack_variant variant,
141
- const char **format,
142
- const char *format_end,
143
- pm_pack_type *type,
144
- pm_pack_signed *signed_type,
145
- pm_pack_endian *endian,
146
- pm_pack_size *size,
147
- pm_pack_length_type *length_type,
148
- uint64_t *length,
149
- pm_pack_encoding *encoding
150
- );
151
-
152
- /**
153
- * Prism abstracts sizes away from the native system - this converts an abstract
154
- * size to a native size.
155
- *
156
- * @param size The abstract size to convert.
157
- * @return The native size.
158
- */
159
- PRISM_EXPORTED_FUNCTION size_t pm_size_to_native(pm_pack_size size);
160
-
161
- #endif
162
-
163
- #endif
@@ -1,34 +0,0 @@
1
- /**
2
- * @file prettyprint.h
3
- *
4
- * An AST node pretty-printer.
5
- */
6
- #ifndef PRISM_PRETTYPRINT_H
7
- #define PRISM_PRETTYPRINT_H
8
-
9
- #include "prism/defines.h"
10
-
11
- #ifdef PRISM_EXCLUDE_PRETTYPRINT
12
-
13
- void pm_prettyprint(void);
14
-
15
- #else
16
-
17
- #include <stdio.h>
18
-
19
- #include "prism/ast.h"
20
- #include "prism/parser.h"
21
- #include "prism/util/pm_buffer.h"
22
-
23
- /**
24
- * Pretty-prints the AST represented by the given node to the given buffer.
25
- *
26
- * @param output_buffer The buffer to write the pretty-printed AST to.
27
- * @param parser The parser that parsed the AST.
28
- * @param node The root node of the AST to pretty-print.
29
- */
30
- PRISM_EXPORTED_FUNCTION void pm_prettyprint(pm_buffer_t *output_buffer, const pm_parser_t *parser, const pm_node_t *node);
31
-
32
- #endif
33
-
34
- #endif
@@ -1,336 +0,0 @@
1
- /**
2
- * @file prism.h
3
- *
4
- * The main header file for the prism parser.
5
- */
6
- #ifndef PRISM_H
7
- #define PRISM_H
8
-
9
- #include "prism/defines.h"
10
- #include "prism/util/pm_buffer.h"
11
- #include "prism/util/pm_char.h"
12
- #include "prism/util/pm_integer.h"
13
- #include "prism/util/pm_memchr.h"
14
- #include "prism/util/pm_strncasecmp.h"
15
- #include "prism/util/pm_strpbrk.h"
16
- #include "prism/ast.h"
17
- #include "prism/diagnostic.h"
18
- #include "prism/node.h"
19
- #include "prism/options.h"
20
- #include "prism/pack.h"
21
- #include "prism/parser.h"
22
- #include "prism/prettyprint.h"
23
- #include "prism/regexp.h"
24
- #include "prism/static_literals.h"
25
- #include "prism/version.h"
26
-
27
- #include <assert.h>
28
- #include <errno.h>
29
- #include <locale.h>
30
- #include <math.h>
31
- #include <stdarg.h>
32
- #include <stdbool.h>
33
- #include <stdint.h>
34
- #include <stdio.h>
35
- #include <stdlib.h>
36
- #include <string.h>
37
-
38
- #ifndef _WIN32
39
- #include <strings.h>
40
- #endif
41
-
42
- /**
43
- * The prism version and the serialization format.
44
- *
45
- * @returns The prism version as a constant string.
46
- */
47
- PRISM_EXPORTED_FUNCTION const char * pm_version(void);
48
-
49
- /**
50
- * Initialize a parser with the given start and end pointers.
51
- *
52
- * @param parser The parser to initialize.
53
- * @param source The source to parse.
54
- * @param size The size of the source.
55
- * @param options The optional options to use when parsing.
56
- */
57
- PRISM_EXPORTED_FUNCTION void pm_parser_init(pm_parser_t *parser, const uint8_t *source, size_t size, const pm_options_t *options);
58
-
59
- /**
60
- * Register a callback that will be called whenever prism changes the encoding
61
- * it is using to parse based on the magic comment.
62
- *
63
- * @param parser The parser to register the callback with.
64
- * @param callback The callback to register.
65
- */
66
- PRISM_EXPORTED_FUNCTION void pm_parser_register_encoding_changed_callback(pm_parser_t *parser, pm_encoding_changed_callback_t callback);
67
-
68
- /**
69
- * Free any memory associated with the given parser.
70
- *
71
- * @param parser The parser to free.
72
- */
73
- PRISM_EXPORTED_FUNCTION void pm_parser_free(pm_parser_t *parser);
74
-
75
- /**
76
- * Initiate the parser with the given parser.
77
- *
78
- * @param parser The parser to use.
79
- * @return The AST representing the source.
80
- */
81
- PRISM_EXPORTED_FUNCTION pm_node_t * pm_parse(pm_parser_t *parser);
82
-
83
- /**
84
- * This function is used in pm_parse_stream to retrieve a line of input from a
85
- * stream. It closely mirrors that of fgets so that fgets can be used as the
86
- * default implementation.
87
- */
88
- typedef char * (pm_parse_stream_fgets_t)(char *string, int size, void *stream);
89
-
90
- /**
91
- * Parse a stream of Ruby source and return the tree.
92
- *
93
- * @param parser The parser to use.
94
- * @param buffer The buffer to use.
95
- * @param stream The stream to parse.
96
- * @param fgets The function to use to read from the stream.
97
- * @param options The optional options to use when parsing.
98
- * @return The AST representing the source.
99
- */
100
- PRISM_EXPORTED_FUNCTION pm_node_t * pm_parse_stream(pm_parser_t *parser, pm_buffer_t *buffer, void *stream, pm_parse_stream_fgets_t *fgets, const pm_options_t *options);
101
-
102
- // We optionally support serializing to a binary string. For systems that don't
103
- // want or need this functionality, it can be turned off with the
104
- // PRISM_EXCLUDE_SERIALIZATION define.
105
- #ifndef PRISM_EXCLUDE_SERIALIZATION
106
-
107
- /**
108
- * Parse and serialize the AST represented by the source that is read out of the
109
- * given stream into to the given buffer.
110
- *
111
- * @param buffer The buffer to serialize to.
112
- * @param stream The stream to parse.
113
- * @param fgets The function to use to read from the stream.
114
- * @param data The optional data to pass to the parser.
115
- */
116
- PRISM_EXPORTED_FUNCTION void pm_serialize_parse_stream(pm_buffer_t *buffer, void *stream, pm_parse_stream_fgets_t *fgets, const char *data);
117
-
118
- /**
119
- * Serialize the given list of comments to the given buffer.
120
- *
121
- * @param parser The parser to serialize.
122
- * @param list The list of comments to serialize.
123
- * @param buffer The buffer to serialize to.
124
- */
125
- void pm_serialize_comment_list(pm_parser_t *parser, pm_list_t *list, pm_buffer_t *buffer);
126
-
127
- /**
128
- * Serialize the name of the encoding to the buffer.
129
- *
130
- * @param encoding The encoding to serialize.
131
- * @param buffer The buffer to serialize to.
132
- */
133
- void pm_serialize_encoding(const pm_encoding_t *encoding, pm_buffer_t *buffer);
134
-
135
- /**
136
- * Serialize the encoding, metadata, nodes, and constant pool.
137
- *
138
- * @param parser The parser to serialize.
139
- * @param node The node to serialize.
140
- * @param buffer The buffer to serialize to.
141
- */
142
- void pm_serialize_content(pm_parser_t *parser, pm_node_t *node, pm_buffer_t *buffer);
143
-
144
- /**
145
- * Serialize the AST represented by the given node to the given buffer.
146
- *
147
- * @param parser The parser to serialize.
148
- * @param node The node to serialize.
149
- * @param buffer The buffer to serialize to.
150
- */
151
- PRISM_EXPORTED_FUNCTION void pm_serialize(pm_parser_t *parser, pm_node_t *node, pm_buffer_t *buffer);
152
-
153
- /**
154
- * Parse the given source to the AST and dump the AST to the given buffer.
155
- *
156
- * @param buffer The buffer to serialize to.
157
- * @param source The source to parse.
158
- * @param size The size of the source.
159
- * @param data The optional data to pass to the parser.
160
- */
161
- PRISM_EXPORTED_FUNCTION void pm_serialize_parse(pm_buffer_t *buffer, const uint8_t *source, size_t size, const char *data);
162
-
163
- /**
164
- * Parse and serialize the comments in the given source to the given buffer.
165
- *
166
- * @param buffer The buffer to serialize to.
167
- * @param source The source to parse.
168
- * @param size The size of the source.
169
- * @param data The optional data to pass to the parser.
170
- */
171
- PRISM_EXPORTED_FUNCTION void pm_serialize_parse_comments(pm_buffer_t *buffer, const uint8_t *source, size_t size, const char *data);
172
-
173
- /**
174
- * Lex the given source and serialize to the given buffer.
175
- *
176
- * @param source The source to lex.
177
- * @param size The size of the source.
178
- * @param buffer The buffer to serialize to.
179
- * @param data The optional data to pass to the lexer.
180
- */
181
- PRISM_EXPORTED_FUNCTION void pm_serialize_lex(pm_buffer_t *buffer, const uint8_t *source, size_t size, const char *data);
182
-
183
- /**
184
- * Parse and serialize both the AST and the tokens represented by the given
185
- * source to the given buffer.
186
- *
187
- * @param buffer The buffer to serialize to.
188
- * @param source The source to parse.
189
- * @param size The size of the source.
190
- * @param data The optional data to pass to the parser.
191
- */
192
- PRISM_EXPORTED_FUNCTION void pm_serialize_parse_lex(pm_buffer_t *buffer, const uint8_t *source, size_t size, const char *data);
193
-
194
- #endif
195
-
196
- /**
197
- * Parse the source and return true if it parses without errors or warnings.
198
- *
199
- * @param source The source to parse.
200
- * @param size The size of the source.
201
- * @param data The optional data to pass to the parser.
202
- * @return True if the source parses without errors or warnings.
203
- */
204
- PRISM_EXPORTED_FUNCTION bool pm_parse_success_p(const uint8_t *source, size_t size, const char *data);
205
-
206
- /**
207
- * Returns a string representation of the given token type.
208
- *
209
- * @param token_type The token type to convert to a string.
210
- * @return A string representation of the given token type.
211
- */
212
- PRISM_EXPORTED_FUNCTION const char * pm_token_type_name(pm_token_type_t token_type);
213
-
214
- /**
215
- * Returns the human name of the given token type.
216
- *
217
- * @param token_type The token type to convert to a human name.
218
- * @return The human name of the given token type.
219
- */
220
- const char * pm_token_type_human(pm_token_type_t token_type);
221
-
222
- // We optionally support dumping to JSON. For systems that don't want or need
223
- // this functionality, it can be turned off with the PRISM_EXCLUDE_JSON define.
224
- #ifndef PRISM_EXCLUDE_JSON
225
-
226
- /**
227
- * Dump JSON to the given buffer.
228
- *
229
- * @param buffer The buffer to serialize to.
230
- * @param parser The parser that parsed the node.
231
- * @param node The node to serialize.
232
- */
233
- PRISM_EXPORTED_FUNCTION void pm_dump_json(pm_buffer_t *buffer, const pm_parser_t *parser, const pm_node_t *node);
234
-
235
- #endif
236
-
237
- /**
238
- * @mainpage
239
- *
240
- * Prism is a parser for the Ruby programming language. It is designed to be
241
- * portable, error tolerant, and maintainable. It is written in C99 and has no
242
- * dependencies. It is currently being integrated into
243
- * [CRuby](https://github.com/ruby/ruby),
244
- * [JRuby](https://github.com/jruby/jruby),
245
- * [TruffleRuby](https://github.com/oracle/truffleruby),
246
- * [Sorbet](https://github.com/sorbet/sorbet), and
247
- * [Syntax Tree](https://github.com/ruby-syntax-tree/syntax_tree).
248
- *
249
- * @section getting-started Getting started
250
- *
251
- * If you're vendoring this project and compiling it statically then as long as
252
- * you have a C99 compiler you will be fine. If you're linking against it as
253
- * shared library, then you should compile with `-fvisibility=hidden` and
254
- * `-DPRISM_EXPORT_SYMBOLS` to tell prism to make only its public interface
255
- * visible.
256
- *
257
- * @section parsing Parsing
258
- *
259
- * In order to parse Ruby code, the structures and functions that you're going
260
- * to want to use and be aware of are:
261
- *
262
- * * `pm_parser_t` - the main parser structure
263
- * * `pm_parser_init` - initialize a parser
264
- * * `pm_parse` - parse and return the root node
265
- * * `pm_node_destroy` - deallocate the root node returned by `pm_parse`
266
- * * `pm_parser_free` - free the internal memory of the parser
267
- *
268
- * Putting all of this together would look something like:
269
- *
270
- * ```c
271
- * void parse(const uint8_t *source, size_t length) {
272
- * pm_parser_t parser;
273
- * pm_parser_init(&parser, source, length, NULL);
274
- *
275
- * pm_node_t *root = pm_parse(&parser);
276
- * printf("PARSED!\n");
277
- *
278
- * pm_node_destroy(&parser, root);
279
- * pm_parser_free(&parser);
280
- * }
281
- * ```
282
- *
283
- * All of the nodes "inherit" from `pm_node_t` by embedding those structures as
284
- * their first member. This means you can downcast and upcast any node in the
285
- * tree to a `pm_node_t`.
286
- *
287
- * @section serializing Serializing
288
- *
289
- * Prism provides the ability to serialize the AST and its related metadata into
290
- * a binary format. This format is designed to be portable to different
291
- * languages and runtimes so that you only need to make one FFI call in order to
292
- * parse Ruby code. The structures and functions that you're going to want to
293
- * use and be aware of are:
294
- *
295
- * * `pm_buffer_t` - a small buffer object that will hold the serialized AST
296
- * * `pm_buffer_free` - free the memory associated with the buffer
297
- * * `pm_serialize` - serialize the AST into a buffer
298
- * * `pm_serialize_parse` - parse and serialize the AST into a buffer
299
- *
300
- * Putting all of this together would look something like:
301
- *
302
- * ```c
303
- * void serialize(const uint8_t *source, size_t length) {
304
- * pm_buffer_t buffer = { 0 };
305
- *
306
- * pm_serialize_parse(&buffer, source, length, NULL);
307
- * printf("SERIALIZED!\n");
308
- *
309
- * pm_buffer_free(&buffer);
310
- * }
311
- * ```
312
- *
313
- * @section inspecting Inspecting
314
- *
315
- * Prism provides the ability to inspect the AST by pretty-printing nodes. You
316
- * can do this with the `pm_prettyprint` function, which you would use like:
317
- *
318
- * ```c
319
- * void prettyprint(const uint8_t *source, size_t length) {
320
- * pm_parser_t parser;
321
- * pm_parser_init(&parser, source, length, NULL);
322
- *
323
- * pm_node_t *root = pm_parse(&parser);
324
- * pm_buffer_t buffer = { 0 };
325
- *
326
- * pm_prettyprint(&buffer, &parser, root);
327
- * printf("%*.s\n", (int) buffer.length, buffer.value);
328
- *
329
- * pm_buffer_free(&buffer);
330
- * pm_node_destroy(&parser, root);
331
- * pm_parser_free(&parser);
332
- * }
333
- * ```
334
- */
335
-
336
- #endif