datadog-ruby_core_source 3.3.6 → 3.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (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