datadog-ruby_core_source 3.3.6 → 3.3.7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (374) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.datadog.md +7 -1
  3. data/datadog-ruby_core_source.gemspec +6 -1
  4. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/id.h +7 -0
  5. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/array.h +1 -0
  6. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/basic_operators.h +2 -0
  7. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/bits.h +82 -0
  8. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/class.h +1 -1
  9. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/encoding.h +2 -0
  10. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/error.h +2 -0
  11. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/fixnum.h +1 -0
  12. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/gc.h +23 -28
  13. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/hash.h +1 -0
  14. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/imemo.h +7 -1
  15. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/io.h +4 -1
  16. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/parse.h +14 -2
  17. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/ractor.h +4 -0
  18. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/sanitizers.h +36 -3
  19. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/string.h +34 -18
  20. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/thread.h +29 -0
  21. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/vm.h +3 -3
  22. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/method.h +1 -0
  23. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/ast.h +2146 -453
  24. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/defines.h +44 -7
  25. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/diagnostic.h +24 -6
  26. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/extension.h +2 -2
  27. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/node.h +0 -21
  28. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/options.h +94 -3
  29. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/parser.h +82 -40
  30. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/prism.h +47 -11
  31. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/prism/regexp.h +43 -0
  32. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/static_literals.h +3 -2
  33. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/util/pm_char.h +1 -2
  34. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/util/pm_constant_pool.h +0 -8
  35. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/util/pm_integer.h +22 -15
  36. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/util/pm_newline_list.h +11 -0
  37. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/util/pm_string.h +28 -12
  38. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/version.h +3 -3
  39. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism_compile.h +23 -12
  40. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/ractor_core.h +8 -20
  41. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/rubyparser.h +168 -249
  42. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/shape.h +2 -1
  43. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/thread_pthread.h +26 -25
  44. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/vm_core.h +62 -48
  45. data/lib/datadog/ruby_core_source/version.rb +1 -1
  46. data/lib/datadog/ruby_core_source.rb +14 -1
  47. metadata +109 -372
  48. data/.github/workflows/publish.yml +0 -18
  49. data/.gitignore +0 -7
  50. data/.idea/vcs.xml +0 -28
  51. data/CHANGELOG.md +0 -284
  52. data/CONTRIBUTING.md +0 -2
  53. data/Gemfile +0 -4
  54. data/Rakefile +0 -73
  55. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/addr2line.h +0 -21
  56. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/constant.h +0 -50
  57. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/debug_counter.h +0 -109
  58. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/dln.h +0 -51
  59. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/encindex.h +0 -69
  60. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/eval_intern.h +0 -334
  61. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/gc.h +0 -116
  62. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/id_table.h +0 -31
  63. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/insns.inc +0 -217
  64. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/insns_info.inc +0 -1570
  65. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/known_errors.inc +0 -746
  66. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/node_name.inc +0 -198
  67. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/opt_sc.inc +0 -1601
  68. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/optinsn.inc +0 -103
  69. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/optunifs.inc +0 -61
  70. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/parse.h +0 -206
  71. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/probes_helper.h +0 -43
  72. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/regenc.h +0 -254
  73. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/regint.h +0 -938
  74. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/regparse.h +0 -370
  75. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/revision.h +0 -1
  76. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/siphash.h +0 -48
  77. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/symbol.h +0 -108
  78. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/thread_win32.h +0 -36
  79. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/timev.h +0 -42
  80. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/transcode_data.h +0 -139
  81. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/version.h +0 -73
  82. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/vm.inc +0 -3667
  83. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/vm_call_iseq_optimized.inc +0 -213
  84. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/vm_exec.h +0 -192
  85. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/vm_insnhelper.h +0 -255
  86. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/vmtc.inc +0 -214
  87. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/addr2line.h +0 -21
  88. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/constant.h +0 -51
  89. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/debug_counter.h +0 -109
  90. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/dln.h +0 -51
  91. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/encindex.h +0 -69
  92. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/eval_intern.h +0 -334
  93. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/gc.h +0 -116
  94. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/id_table.h +0 -31
  95. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/insns.inc +0 -217
  96. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/insns_info.inc +0 -1570
  97. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/known_errors.inc +0 -746
  98. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/node_name.inc +0 -198
  99. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/opt_sc.inc +0 -1601
  100. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/optinsn.inc +0 -103
  101. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/optunifs.inc +0 -61
  102. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/parse.h +0 -206
  103. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/probes_helper.h +0 -43
  104. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/regenc.h +0 -254
  105. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/regint.h +0 -938
  106. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/regparse.h +0 -370
  107. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/revision.h +0 -1
  108. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/siphash.h +0 -48
  109. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/symbol.h +0 -108
  110. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/thread_win32.h +0 -36
  111. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/timev.h +0 -42
  112. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/transcode_data.h +0 -139
  113. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/version.h +0 -73
  114. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/vm.inc +0 -3667
  115. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/vm_call_iseq_optimized.inc +0 -213
  116. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/vm_exec.h +0 -192
  117. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/vm_insnhelper.h +0 -255
  118. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/vmtc.inc +0 -214
  119. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/addr2line.h +0 -21
  120. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/constant.h +0 -51
  121. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/debug_counter.h +0 -109
  122. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/dln.h +0 -51
  123. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/encindex.h +0 -69
  124. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/eval_intern.h +0 -334
  125. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/gc.h +0 -116
  126. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/id_table.h +0 -31
  127. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/insns.inc +0 -217
  128. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/insns_info.inc +0 -1570
  129. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/known_errors.inc +0 -746
  130. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/node_name.inc +0 -198
  131. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/opt_sc.inc +0 -1601
  132. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/optinsn.inc +0 -103
  133. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/optunifs.inc +0 -61
  134. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/parse.h +0 -200
  135. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/probes_helper.h +0 -43
  136. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/regenc.h +0 -254
  137. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/regint.h +0 -938
  138. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/regparse.h +0 -370
  139. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/revision.h +0 -1
  140. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/siphash.h +0 -48
  141. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/symbol.h +0 -108
  142. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/thread_win32.h +0 -36
  143. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/timev.h +0 -42
  144. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/transcode_data.h +0 -139
  145. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/version.h +0 -73
  146. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/vm.inc +0 -3667
  147. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/vm_call_iseq_optimized.inc +0 -213
  148. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/vm_exec.h +0 -192
  149. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/vm_insnhelper.h +0 -255
  150. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/vmtc.inc +0 -214
  151. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/addr2line.h +0 -22
  152. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/builtin.h +0 -117
  153. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/constant.h +0 -53
  154. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/darray.h +0 -246
  155. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/debug_counter.h +0 -423
  156. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/dln.h +0 -32
  157. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/encindex.h +0 -70
  158. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/eval_intern.h +0 -343
  159. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/hrtime.h +0 -227
  160. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/insns.inc +0 -251
  161. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/insns_info.inc +0 -9215
  162. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/known_errors.inc +0 -791
  163. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/node_name.inc +0 -212
  164. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/optinsn.inc +0 -128
  165. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/optunifs.inc +0 -43
  166. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/parse.h +0 -243
  167. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/parser_bits.h +0 -564
  168. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/parser_node.h +0 -32
  169. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/probes_helper.h +0 -42
  170. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/regenc.h +0 -254
  171. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/regint.h +0 -1004
  172. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/regparse.h +0 -371
  173. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/revision.h +0 -5
  174. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/rjit.h +0 -101
  175. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/rjit_c.h +0 -164
  176. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/siphash.h +0 -48
  177. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/symbol.h +0 -118
  178. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/thread_win32.h +0 -58
  179. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/timev.h +0 -58
  180. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/transcode_data.h +0 -138
  181. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/variable.h +0 -39
  182. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/version.h +0 -69
  183. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm.inc +0 -5436
  184. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm_call_iseq_optimized.inc +0 -244
  185. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm_callinfo.h +0 -619
  186. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm_exec.h +0 -199
  187. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm_insnhelper.h +0 -261
  188. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm_sync.h +0 -137
  189. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vmtc.inc +0 -245
  190. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/yjit.h +0 -72
  191. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/addr2line.h +0 -22
  192. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/builtin.h +0 -117
  193. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/constant.h +0 -53
  194. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/darray.h +0 -246
  195. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/debug_counter.h +0 -423
  196. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/dln.h +0 -32
  197. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/encindex.h +0 -70
  198. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/eval_intern.h +0 -343
  199. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/hrtime.h +0 -227
  200. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/insns.inc +0 -251
  201. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/insns_info.inc +0 -9215
  202. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/known_errors.inc +0 -791
  203. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/node_name.inc +0 -212
  204. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/optinsn.inc +0 -128
  205. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/optunifs.inc +0 -43
  206. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/parse.h +0 -243
  207. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/parser_bits.h +0 -564
  208. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/parser_node.h +0 -32
  209. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/probes_helper.h +0 -42
  210. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/regenc.h +0 -254
  211. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/regint.h +0 -1006
  212. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/regparse.h +0 -371
  213. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/revision.h +0 -5
  214. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/rjit.h +0 -101
  215. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/rjit_c.h +0 -164
  216. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/siphash.h +0 -48
  217. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/symbol.h +0 -118
  218. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/thread_win32.h +0 -58
  219. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/timev.h +0 -58
  220. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/transcode_data.h +0 -138
  221. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/variable.h +0 -39
  222. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/version.h +0 -69
  223. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm.inc +0 -5436
  224. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm_call_iseq_optimized.inc +0 -244
  225. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm_callinfo.h +0 -614
  226. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm_exec.h +0 -199
  227. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm_insnhelper.h +0 -261
  228. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm_sync.h +0 -137
  229. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vmtc.inc +0 -245
  230. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/yjit.h +0 -72
  231. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/addr2line.h +0 -22
  232. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/builtin.h +0 -119
  233. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/constant.h +0 -53
  234. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/darray.h +0 -191
  235. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/debug_counter.h +0 -423
  236. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/dln.h +0 -34
  237. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/encindex.h +0 -70
  238. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/eval_intern.h +0 -324
  239. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/hrtime.h +0 -237
  240. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/insns.inc +0 -259
  241. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/insns_info.inc +0 -9530
  242. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/known_errors.inc +0 -1419
  243. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/node_name.inc +0 -224
  244. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/optinsn.inc +0 -128
  245. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/optunifs.inc +0 -43
  246. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/parse.h +0 -243
  247. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/parser_bits.h +0 -564
  248. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/parser_node.h +0 -32
  249. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/regexp.h +0 -33
  250. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/util/pm_string_list.h +0 -44
  251. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/probes_helper.h +0 -42
  252. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/regenc.h +0 -254
  253. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/regint.h +0 -1010
  254. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/regparse.h +0 -371
  255. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/revision.h +0 -5
  256. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/rjit.h +0 -101
  257. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/rjit_c.h +0 -165
  258. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/siphash.h +0 -48
  259. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/symbol.h +0 -118
  260. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/thread_win32.h +0 -58
  261. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/timev.h +0 -58
  262. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/transcode_data.h +0 -138
  263. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/variable.h +0 -39
  264. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/version.h +0 -69
  265. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm.inc +0 -5643
  266. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm_call_iseq_optimized.inc +0 -244
  267. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm_callinfo.h +0 -605
  268. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm_exec.h +0 -199
  269. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm_insnhelper.h +0 -272
  270. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm_sync.h +0 -137
  271. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vmtc.inc +0 -253
  272. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/yjit.h +0 -79
  273. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/addr2line.h +0 -22
  274. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/builtin.h +0 -119
  275. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/constant.h +0 -53
  276. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/darray.h +0 -209
  277. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/debug_counter.h +0 -423
  278. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/dln.h +0 -32
  279. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/encindex.h +0 -70
  280. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/eval_intern.h +0 -324
  281. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/hrtime.h +0 -237
  282. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/insns.inc +0 -265
  283. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/insns_info.inc +0 -9902
  284. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/known_errors.inc +0 -1419
  285. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/node_name.inc +0 -224
  286. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/optinsn.inc +0 -128
  287. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/optunifs.inc +0 -43
  288. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/parse.h +0 -244
  289. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/parser_bits.h +0 -564
  290. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/parser_node.h +0 -32
  291. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/probes_helper.h +0 -42
  292. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/regenc.h +0 -254
  293. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/regint.h +0 -1006
  294. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/regparse.h +0 -371
  295. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/revision.h +0 -5
  296. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/rjit.h +0 -101
  297. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/rjit_c.h +0 -165
  298. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/siphash.h +0 -48
  299. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/symbol.h +0 -123
  300. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/thread_win32.h +0 -58
  301. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/timev.h +0 -58
  302. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/transcode_data.h +0 -138
  303. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/variable.h +0 -39
  304. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/version.h +0 -69
  305. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm.inc +0 -5840
  306. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_call_iseq_optimized.inc +0 -244
  307. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_callinfo.h +0 -627
  308. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_exec.h +0 -199
  309. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_insnhelper.h +0 -277
  310. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_sync.h +0 -137
  311. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vmtc.inc +0 -259
  312. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/yjit.h +0 -79
  313. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/ccan/build_assert/build_assert.h +0 -0
  314. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/ccan/check_type/check_type.h +0 -0
  315. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/ccan/container_of/container_of.h +0 -0
  316. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/ccan/list/list.h +0 -0
  317. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/ccan/str/str.h +0 -0
  318. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/id_table.h +0 -0
  319. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/bignum.h +0 -0
  320. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/cmdlineopt.h +0 -0
  321. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/compar.h +0 -0
  322. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/compile.h +0 -0
  323. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/compilers.h +0 -0
  324. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/complex.h +0 -0
  325. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/cont.h +0 -0
  326. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/dir.h +0 -0
  327. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/enc.h +0 -0
  328. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/enum.h +0 -0
  329. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/enumerator.h +0 -0
  330. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/eval.h +0 -0
  331. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/file.h +0 -0
  332. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/inits.h +0 -0
  333. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/load.h +0 -0
  334. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/loadpath.h +0 -0
  335. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/math.h +0 -0
  336. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/missing.h +0 -0
  337. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/numeric.h +0 -0
  338. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/object.h +0 -0
  339. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/proc.h +0 -0
  340. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/process.h +0 -0
  341. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/random.h +0 -0
  342. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/range.h +0 -0
  343. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/rational.h +0 -0
  344. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/re.h +0 -0
  345. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/ruby_parser.h +0 -0
  346. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/serial.h +0 -0
  347. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/signal.h +0 -0
  348. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/st.h +0 -0
  349. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/static_assert.h +0 -0
  350. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/struct.h +0 -0
  351. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/symbol.h +0 -0
  352. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/time.h +0 -0
  353. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/transcode.h +0 -0
  354. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/util.h +0 -0
  355. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/variable.h +0 -0
  356. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal/warnings.h +0 -0
  357. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/internal.h +0 -0
  358. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/iseq.h +0 -0
  359. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/node.h +0 -0
  360. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/parser_st.h +0 -0
  361. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/parser_value.h +0 -0
  362. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/encoding.h +0 -0
  363. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/pack.h +0 -0
  364. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/prettyprint.h +0 -0
  365. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/util/pm_buffer.h +0 -0
  366. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/util/pm_list.h +0 -0
  367. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/util/pm_memchr.h +0 -0
  368. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/util/pm_strncasecmp.h +0 -0
  369. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/prism/util/pm_strpbrk.h +0 -0
  370. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/ruby_assert.h +0 -0
  371. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/ruby_atomic.h +0 -0
  372. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/thread_none.h +0 -0
  373. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/vm_debug.h +0 -0
  374. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-rc1}/vm_opts.h +0 -0
@@ -224,8 +224,9 @@ typedef struct rb_parser_ast_token {
224
224
  typedef void* rb_parser_ary_data;
225
225
 
226
226
  enum rb_parser_ary_data_type {
227
- PARSER_ARY_DATA_AST_TOKEN,
228
- PARSER_ARY_DATA_SCRIPT_LINE
227
+ PARSER_ARY_DATA_AST_TOKEN = 1,
228
+ PARSER_ARY_DATA_SCRIPT_LINE,
229
+ PARSER_ARY_DATA_NODE
229
230
  };
230
231
 
231
232
  typedef struct rb_parser_ary {
@@ -272,6 +273,9 @@ typedef struct RNode_UNLESS {
272
273
  struct RNode *nd_cond;
273
274
  struct RNode *nd_body;
274
275
  struct RNode *nd_else;
276
+ rb_code_location_t keyword_loc;
277
+ rb_code_location_t then_keyword_loc;
278
+ rb_code_location_t end_keyword_loc;
275
279
  } rb_node_unless_t;
276
280
 
277
281
  typedef struct RNode_CASE {
@@ -279,6 +283,8 @@ typedef struct RNode_CASE {
279
283
 
280
284
  struct RNode *nd_head;
281
285
  struct RNode *nd_body;
286
+ rb_code_location_t case_keyword_loc;
287
+ rb_code_location_t end_keyword_loc;
282
288
  } rb_node_case_t;
283
289
 
284
290
  typedef struct RNode_CASE2 {
@@ -286,6 +292,8 @@ typedef struct RNode_CASE2 {
286
292
 
287
293
  struct RNode *nd_head;
288
294
  struct RNode *nd_body;
295
+ rb_code_location_t case_keyword_loc;
296
+ rb_code_location_t end_keyword_loc;
289
297
  } rb_node_case2_t;
290
298
 
291
299
  typedef struct RNode_CASE3 {
@@ -293,6 +301,8 @@ typedef struct RNode_CASE3 {
293
301
 
294
302
  struct RNode *nd_head;
295
303
  struct RNode *nd_body;
304
+ rb_code_location_t case_keyword_loc;
305
+ rb_code_location_t end_keyword_loc;
296
306
  } rb_node_case3_t;
297
307
 
298
308
  typedef struct RNode_WHEN {
@@ -301,6 +311,8 @@ typedef struct RNode_WHEN {
301
311
  struct RNode *nd_head;
302
312
  struct RNode *nd_body;
303
313
  struct RNode *nd_next;
314
+ rb_code_location_t keyword_loc;
315
+ rb_code_location_t then_keyword_loc;
304
316
  } rb_node_when_t;
305
317
 
306
318
  typedef struct RNode_IN {
@@ -311,37 +323,22 @@ typedef struct RNode_IN {
311
323
  struct RNode *nd_next;
312
324
  } rb_node_in_t;
313
325
 
314
- /* RNode_WHILE and RNode_UNTIL should be same structure */
315
- typedef struct RNode_WHILE {
326
+ typedef struct RNode_LOOP {
316
327
  NODE node;
317
328
 
318
329
  struct RNode *nd_cond;
319
330
  struct RNode *nd_body;
320
331
  long nd_state;
321
- } rb_node_while_t;
332
+ rb_code_location_t keyword_loc;
333
+ rb_code_location_t closing_loc;
334
+ } rb_node_while_t, rb_node_until_t;
322
335
 
323
- typedef struct RNode_UNTIL {
324
- NODE node;
325
-
326
- struct RNode *nd_cond;
327
- struct RNode *nd_body;
328
- long nd_state;
329
- } rb_node_until_t;
330
-
331
- /* RNode_ITER and RNode_FOR should be same structure */
332
336
  typedef struct RNode_ITER {
333
337
  NODE node;
334
338
 
335
339
  struct RNode *nd_body;
336
340
  struct RNode *nd_iter;
337
- } rb_node_iter_t;
338
-
339
- typedef struct RNode_FOR {
340
- NODE node;
341
-
342
- struct RNode *nd_body;
343
- struct RNode *nd_iter;
344
- } rb_node_for_t;
341
+ } rb_node_iter_t, rb_node_for_t;
345
342
 
346
343
  typedef struct RNode_FOR_MASGN {
347
344
  NODE node;
@@ -349,26 +346,13 @@ typedef struct RNode_FOR_MASGN {
349
346
  struct RNode *nd_var;
350
347
  } rb_node_for_masgn_t;
351
348
 
352
- /* RNode_BREAK, RNode_NEXT and RNode_REDO should be same structure */
353
- typedef struct RNode_BREAK {
354
- NODE node;
355
-
356
- struct RNode *nd_chain;
357
- struct RNode *nd_stts;
358
- } rb_node_break_t;
359
-
360
- typedef struct RNode_NEXT {
349
+ typedef struct RNode_EXITS {
361
350
  NODE node;
362
351
 
363
352
  struct RNode *nd_chain;
364
353
  struct RNode *nd_stts;
365
- } rb_node_next_t;
366
-
367
- typedef struct RNode_REDO {
368
- NODE node;
369
-
370
- struct RNode *nd_chain;
371
- } rb_node_redo_t;
354
+ rb_code_location_t keyword_loc;
355
+ } rb_node_exits_t, rb_node_break_t, rb_node_next_t, rb_node_redo_t;
372
356
 
373
357
  typedef struct RNode_RETRY {
374
358
  NODE node;
@@ -392,6 +376,7 @@ typedef struct RNode_RESBODY {
392
376
  NODE node;
393
377
 
394
378
  struct RNode *nd_args;
379
+ struct RNode *nd_exc_var;
395
380
  struct RNode *nd_body;
396
381
  struct RNode *nd_next;
397
382
  } rb_node_resbody_t;
@@ -403,20 +388,13 @@ typedef struct RNode_ENSURE {
403
388
  struct RNode *nd_ensr;
404
389
  } rb_node_ensure_t;
405
390
 
406
- /* RNode_AND and RNode_OR should be same structure */
407
- typedef struct RNode_AND {
391
+ typedef struct {
408
392
  NODE node;
409
393
 
410
394
  struct RNode *nd_1st;
411
395
  struct RNode *nd_2nd;
412
- } rb_node_and_t;
413
-
414
- typedef struct RNode_OR {
415
- NODE node;
416
-
417
- struct RNode *nd_1st;
418
- struct RNode *nd_2nd;
419
- } rb_node_or_t;
396
+ rb_code_location_t operator_loc;
397
+ } rb_node_and_t, rb_node_or_t;
420
398
 
421
399
  typedef struct RNode_MASGN {
422
400
  NODE node;
@@ -477,6 +455,10 @@ typedef struct RNode_OP_ASGN1 {
477
455
  ID nd_mid;
478
456
  struct RNode *nd_index;
479
457
  struct RNode *nd_rvalue;
458
+ rb_code_location_t call_operator_loc;
459
+ rb_code_location_t opening_loc;
460
+ rb_code_location_t closing_loc;
461
+ rb_code_location_t binary_operator_loc;
480
462
  } rb_node_op_asgn1_t;
481
463
 
482
464
  typedef struct RNode_OP_ASGN2 {
@@ -487,6 +469,9 @@ typedef struct RNode_OP_ASGN2 {
487
469
  ID nd_vid;
488
470
  ID nd_mid;
489
471
  bool nd_aid;
472
+ rb_code_location_t call_operator_loc;
473
+ rb_code_location_t message_loc;
474
+ rb_code_location_t binary_operator_loc;
490
475
  } rb_node_op_asgn2_t;
491
476
 
492
477
  typedef struct RNode_OP_ASGN_AND {
@@ -568,8 +553,6 @@ typedef struct RNode_ZSUPER {
568
553
  * alen (length of list) | * nd_end (point to the last LIST)
569
554
  * next -----------------+ * next
570
555
 
571
-
572
- RNode_LIST and RNode_VALUES should be same structure
573
556
  */
574
557
  typedef struct RNode_LIST {
575
558
  NODE node;
@@ -586,14 +569,6 @@ typedef struct RNode_ZLIST {
586
569
  NODE node;
587
570
  } rb_node_zlist_t;
588
571
 
589
- typedef struct RNode_VALUES {
590
- NODE node;
591
-
592
- struct RNode *nd_head;
593
- long nd_alen;
594
- struct RNode *nd_next;
595
- } rb_node_values_t;
596
-
597
572
  typedef struct RNode_HASH {
598
573
  NODE node;
599
574
 
@@ -605,6 +580,7 @@ typedef struct RNode_RETURN {
605
580
  NODE node;
606
581
 
607
582
  struct RNode *nd_stts;
583
+ rb_code_location_t keyword_loc;
608
584
  } rb_node_return_t;
609
585
 
610
586
  typedef struct RNode_YIELD {
@@ -661,14 +637,6 @@ typedef struct RNode_BACK_REF {
661
637
  long nd_nth;
662
638
  } rb_node_back_ref_t;
663
639
 
664
- /* RNode_MATCH and RNode_REGX should be same structure */
665
- typedef struct RNode_MATCH {
666
- NODE node;
667
-
668
- struct rb_parser_string *string;
669
- int options;
670
- } rb_node_match_t;
671
-
672
640
  typedef struct RNode_MATCH2 {
673
641
  NODE node;
674
642
 
@@ -724,38 +692,28 @@ typedef struct RNode_IMAGINARY {
724
692
  enum rb_numeric_type type;
725
693
  } rb_node_imaginary_t;
726
694
 
727
- /* RNode_STR and RNode_XSTR should be same structure */
728
695
  typedef struct RNode_STR {
729
696
  NODE node;
730
697
 
731
698
  struct rb_parser_string *string;
732
699
  } rb_node_str_t;
733
700
 
734
- /* RNode_DSTR, RNode_DXSTR and RNode_DSYM should be same structure */
701
+ /* NODE_DSTR, NODE_DXSTR, NODE_DREGX, NODE_DSYM */
735
702
  typedef struct RNode_DSTR {
736
703
  NODE node;
737
704
 
738
705
  struct rb_parser_string *string;
739
706
  union {
740
707
  long nd_alen;
708
+ long nd_cflag;
741
709
  struct RNode *nd_end; /* Second dstr node has this structure. See also RNode_LIST */
742
710
  } as;
743
711
  struct RNode_LIST *nd_next;
744
712
  } rb_node_dstr_t;
745
713
 
746
- typedef struct RNode_XSTR {
747
- NODE node;
748
-
749
- struct rb_parser_string *string;
750
- } rb_node_xstr_t;
714
+ typedef rb_node_str_t rb_node_xstr_t;
751
715
 
752
- typedef struct RNode_DXSTR {
753
- NODE node;
754
-
755
- struct rb_parser_string *string;
756
- long nd_alen;
757
- struct RNode_LIST *nd_next;
758
- } rb_node_dxstr_t;
716
+ typedef rb_node_dstr_t rb_node_dxstr_t;
759
717
 
760
718
  typedef struct RNode_EVSTR {
761
719
  NODE node;
@@ -763,20 +721,14 @@ typedef struct RNode_EVSTR {
763
721
  struct RNode *nd_body;
764
722
  } rb_node_evstr_t;
765
723
 
766
- typedef struct RNode_REGX {
724
+ typedef struct RNode_REGX { /* also RNode_MATCH */
767
725
  NODE node;
768
726
 
769
727
  struct rb_parser_string *string;
770
728
  int options;
771
- } rb_node_regx_t;
729
+ } rb_node_regx_t, rb_node_match_t;
772
730
 
773
- typedef struct RNode_DREGX {
774
- NODE node;
775
-
776
- struct rb_parser_string *string;
777
- ID nd_cflag;
778
- struct RNode_LIST *nd_next;
779
- } rb_node_dregx_t;
731
+ typedef rb_node_dstr_t rb_node_dregx_t;
780
732
 
781
733
  typedef struct RNode_ONCE {
782
734
  NODE node;
@@ -858,6 +810,7 @@ typedef struct RNode_SPLAT {
858
810
  NODE node;
859
811
 
860
812
  struct RNode *nd_head;
813
+ rb_code_location_t operator_loc;
861
814
  } rb_node_splat_t;
862
815
 
863
816
  typedef struct RNode_BLOCK_PASS {
@@ -865,6 +818,8 @@ typedef struct RNode_BLOCK_PASS {
865
818
 
866
819
  struct RNode *nd_head;
867
820
  struct RNode *nd_body;
821
+ unsigned int forwarding: 1;
822
+ rb_code_location_t operator_loc;
868
823
  } rb_node_block_pass_t;
869
824
 
870
825
  typedef struct RNode_DEFN {
@@ -887,6 +842,7 @@ typedef struct RNode_ALIAS {
887
842
 
888
843
  struct RNode *nd_1st;
889
844
  struct RNode *nd_2nd;
845
+ rb_code_location_t keyword_loc;
890
846
  } rb_node_alias_t;
891
847
 
892
848
  typedef struct RNode_VALIAS {
@@ -894,12 +850,14 @@ typedef struct RNode_VALIAS {
894
850
 
895
851
  ID nd_alias;
896
852
  ID nd_orig;
853
+ rb_code_location_t keyword_loc;
897
854
  } rb_node_valias_t;
898
855
 
899
856
  typedef struct RNode_UNDEF {
900
857
  NODE node;
901
858
 
902
- struct RNode *nd_undef;
859
+ rb_parser_ary_t *nd_undefs;
860
+ rb_code_location_t keyword_loc;
903
861
  } rb_node_undef_t;
904
862
 
905
863
  typedef struct RNode_CLASS {
@@ -937,34 +895,13 @@ typedef struct RNode_COLON3 {
937
895
  ID nd_mid;
938
896
  } rb_node_colon3_t;
939
897
 
940
- /* RNode_DOT2, RNode_DOT3, RNode_FLIP2 and RNode_FLIP3 should be same structure */
941
- typedef struct RNode_DOT2 {
942
- NODE node;
943
-
944
- struct RNode *nd_beg;
945
- struct RNode *nd_end;
946
- } rb_node_dot2_t;
947
-
948
- typedef struct RNode_DOT3 {
898
+ /* NODE_DOT2, NODE_DOT3, NODE_FLIP2, NODE_FLIP3 */
899
+ typedef struct RNode_DOTS {
949
900
  NODE node;
950
901
 
951
902
  struct RNode *nd_beg;
952
903
  struct RNode *nd_end;
953
- } rb_node_dot3_t;
954
-
955
- typedef struct RNode_FLIP2 {
956
- NODE node;
957
-
958
- struct RNode *nd_beg;
959
- struct RNode *nd_end;
960
- } rb_node_flip2_t;
961
-
962
- typedef struct RNode_FLIP3 {
963
- NODE node;
964
-
965
- struct RNode *nd_beg;
966
- struct RNode *nd_end;
967
- } rb_node_flip3_t;
904
+ } rb_node_dot2_t, rb_node_dot3_t, rb_node_flip2_t, rb_node_flip3_t;
968
905
 
969
906
  typedef struct RNode_SELF {
970
907
  NODE node;
@@ -1006,13 +943,7 @@ typedef struct RNode_SYM {
1006
943
  struct rb_parser_string *string;
1007
944
  } rb_node_sym_t;
1008
945
 
1009
- typedef struct RNode_DSYM {
1010
- NODE node;
1011
-
1012
- struct rb_parser_string *string;
1013
- long nd_alen;
1014
- struct RNode_LIST *nd_next;
1015
- } rb_node_dsym_t;
946
+ typedef rb_node_dstr_t rb_node_dsym_t;
1016
947
 
1017
948
  typedef struct RNode_ATTRASGN {
1018
949
  NODE node;
@@ -1073,119 +1004,119 @@ typedef struct RNode_ERROR {
1073
1004
  NODE node;
1074
1005
  } rb_node_error_t;
1075
1006
 
1076
- #define RNODE(obj) ((struct RNode *)(obj))
1077
-
1078
- #define RNODE_SCOPE(node) ((struct RNode_SCOPE *)(node))
1079
- #define RNODE_BLOCK(node) ((struct RNode_BLOCK *)(node))
1080
- #define RNODE_IF(node) ((struct RNode_IF *)(node))
1081
- #define RNODE_UNLESS(node) ((struct RNode_UNLESS *)(node))
1082
- #define RNODE_CASE(node) ((struct RNode_CASE *)(node))
1083
- #define RNODE_CASE2(node) ((struct RNode_CASE2 *)(node))
1084
- #define RNODE_CASE3(node) ((struct RNode_CASE3 *)(node))
1085
- #define RNODE_WHEN(node) ((struct RNode_WHEN *)(node))
1086
- #define RNODE_IN(node) ((struct RNode_IN *)(node))
1087
- #define RNODE_WHILE(node) ((struct RNode_WHILE *)(node))
1088
- #define RNODE_UNTIL(node) ((struct RNode_UNTIL *)(node))
1089
- #define RNODE_ITER(node) ((struct RNode_ITER *)(node))
1090
- #define RNODE_FOR(node) ((struct RNode_FOR *)(node))
1091
- #define RNODE_FOR_MASGN(node) ((struct RNode_FOR_MASGN *)(node))
1092
- #define RNODE_BREAK(node) ((struct RNode_BREAK *)(node))
1093
- #define RNODE_NEXT(node) ((struct RNode_NEXT *)(node))
1094
- #define RNODE_REDO(node) ((struct RNode_REDO *)(node))
1095
- #define RNODE_RETRY(node) ((struct RNode_RETRY *)(node))
1096
- #define RNODE_BEGIN(node) ((struct RNode_BEGIN *)(node))
1097
- #define RNODE_RESCUE(node) ((struct RNode_RESCUE *)(node))
1098
- #define RNODE_RESBODY(node) ((struct RNode_RESBODY *)(node))
1099
- #define RNODE_ENSURE(node) ((struct RNode_ENSURE *)(node))
1100
- #define RNODE_AND(node) ((struct RNode_AND *)(node))
1101
- #define RNODE_OR(node) ((struct RNode_OR *)(node))
1102
- #define RNODE_MASGN(node) ((struct RNode_MASGN *)(node))
1103
- #define RNODE_LASGN(node) ((struct RNode_LASGN *)(node))
1104
- #define RNODE_DASGN(node) ((struct RNode_DASGN *)(node))
1105
- #define RNODE_GASGN(node) ((struct RNode_GASGN *)(node))
1106
- #define RNODE_IASGN(node) ((struct RNode_IASGN *)(node))
1107
- #define RNODE_CDECL(node) ((struct RNode_CDECL *)(node))
1108
- #define RNODE_CVASGN(node) ((struct RNode_CVASGN *)(node))
1109
- #define RNODE_OP_ASGN1(node) ((struct RNode_OP_ASGN1 *)(node))
1110
- #define RNODE_OP_ASGN2(node) ((struct RNode_OP_ASGN2 *)(node))
1111
- #define RNODE_OP_ASGN_AND(node) ((struct RNode_OP_ASGN_AND *)(node))
1112
- #define RNODE_OP_ASGN_OR(node) ((struct RNode_OP_ASGN_OR *)(node))
1113
- #define RNODE_OP_CDECL(node) ((struct RNode_OP_CDECL *)(node))
1114
- #define RNODE_CALL(node) ((struct RNode_CALL *)(node))
1115
- #define RNODE_OPCALL(node) ((struct RNode_OPCALL *)(node))
1116
- #define RNODE_FCALL(node) ((struct RNode_FCALL *)(node))
1117
- #define RNODE_VCALL(node) ((struct RNode_VCALL *)(node))
1118
- #define RNODE_QCALL(node) ((struct RNode_QCALL *)(node))
1119
- #define RNODE_SUPER(node) ((struct RNode_SUPER *)(node))
1120
- #define RNODE_ZSUPER(node) ((struct RNode_ZSUPER *)(node))
1121
- #define RNODE_LIST(node) ((struct RNode_LIST *)(node))
1122
- #define RNODE_ZLIST(node) ((struct RNode_ZLIST *)(node))
1123
- #define RNODE_HASH(node) ((struct RNode_HASH *)(node))
1124
- #define RNODE_RETURN(node) ((struct RNode_RETURN *)(node))
1125
- #define RNODE_YIELD(node) ((struct RNode_YIELD *)(node))
1126
- #define RNODE_LVAR(node) ((struct RNode_LVAR *)(node))
1127
- #define RNODE_DVAR(node) ((struct RNode_DVAR *)(node))
1128
- #define RNODE_GVAR(node) ((struct RNode_GVAR *)(node))
1129
- #define RNODE_IVAR(node) ((struct RNode_IVAR *)(node))
1130
- #define RNODE_CONST(node) ((struct RNode_CONST *)(node))
1131
- #define RNODE_CVAR(node) ((struct RNode_CVAR *)(node))
1132
- #define RNODE_NTH_REF(node) ((struct RNode_NTH_REF *)(node))
1133
- #define RNODE_BACK_REF(node) ((struct RNode_BACK_REF *)(node))
1134
- #define RNODE_MATCH(node) ((struct RNode_MATCH *)(node))
1135
- #define RNODE_MATCH2(node) ((struct RNode_MATCH2 *)(node))
1136
- #define RNODE_MATCH3(node) ((struct RNode_MATCH3 *)(node))
1137
- #define RNODE_INTEGER(node) ((struct RNode_INTEGER *)(node))
1138
- #define RNODE_FLOAT(node) ((struct RNode_FLOAT *)(node))
1139
- #define RNODE_RATIONAL(node) ((struct RNode_RATIONAL *)(node))
1140
- #define RNODE_IMAGINARY(node) ((struct RNode_IMAGINARY *)(node))
1141
- #define RNODE_STR(node) ((struct RNode_STR *)(node))
1142
- #define RNODE_DSTR(node) ((struct RNode_DSTR *)(node))
1143
- #define RNODE_XSTR(node) ((struct RNode_XSTR *)(node))
1144
- #define RNODE_DXSTR(node) ((struct RNode_DXSTR *)(node))
1145
- #define RNODE_EVSTR(node) ((struct RNode_EVSTR *)(node))
1146
- #define RNODE_REGX(node) ((struct RNode_REGX *)(node))
1147
- #define RNODE_DREGX(node) ((struct RNode_DREGX *)(node))
1148
- #define RNODE_ONCE(node) ((struct RNode_ONCE *)(node))
1149
- #define RNODE_ARGS(node) ((struct RNode_ARGS *)(node))
1150
- #define RNODE_ARGS_AUX(node) ((struct RNode_ARGS_AUX *)(node))
1151
- #define RNODE_OPT_ARG(node) ((struct RNode_OPT_ARG *)(node))
1152
- #define RNODE_KW_ARG(node) ((struct RNode_KW_ARG *)(node))
1153
- #define RNODE_POSTARG(node) ((struct RNode_POSTARG *)(node))
1154
- #define RNODE_ARGSCAT(node) ((struct RNode_ARGSCAT *)(node))
1155
- #define RNODE_ARGSPUSH(node) ((struct RNode_ARGSPUSH *)(node))
1156
- #define RNODE_SPLAT(node) ((struct RNode_SPLAT *)(node))
1157
- #define RNODE_BLOCK_PASS(node) ((struct RNode_BLOCK_PASS *)(node))
1158
- #define RNODE_DEFN(node) ((struct RNode_DEFN *)(node))
1159
- #define RNODE_DEFS(node) ((struct RNode_DEFS *)(node))
1160
- #define RNODE_ALIAS(node) ((struct RNode_ALIAS *)(node))
1161
- #define RNODE_VALIAS(node) ((struct RNode_VALIAS *)(node))
1162
- #define RNODE_UNDEF(node) ((struct RNode_UNDEF *)(node))
1163
- #define RNODE_CLASS(node) ((struct RNode_CLASS *)(node))
1164
- #define RNODE_MODULE(node) ((struct RNode_MODULE *)(node))
1165
- #define RNODE_SCLASS(node) ((struct RNode_SCLASS *)(node))
1166
- #define RNODE_COLON2(node) ((struct RNode_COLON2 *)(node))
1167
- #define RNODE_COLON3(node) ((struct RNode_COLON3 *)(node))
1168
- #define RNODE_DOT2(node) ((struct RNode_DOT2 *)(node))
1169
- #define RNODE_DOT3(node) ((struct RNode_DOT3 *)(node))
1170
- #define RNODE_FLIP2(node) ((struct RNode_FLIP2 *)(node))
1171
- #define RNODE_FLIP3(node) ((struct RNode_FLIP3 *)(node))
1172
- #define RNODE_SELF(node) ((struct RNode_SELF *)(node))
1173
- #define RNODE_NIL(node) ((struct RNode_NIL *)(node))
1174
- #define RNODE_TRUE(node) ((struct RNode_TRUE *)(node))
1175
- #define RNODE_FALSE(node) ((struct RNode_FALSE *)(node))
1176
- #define RNODE_ERRINFO(node) ((struct RNode_ERRINFO *)(node))
1177
- #define RNODE_DEFINED(node) ((struct RNode_DEFINED *)(node))
1178
- #define RNODE_POSTEXE(node) ((struct RNode_POSTEXE *)(node))
1179
- #define RNODE_SYM(node) ((struct RNode_SYM *)(node))
1180
- #define RNODE_DSYM(node) ((struct RNode_DSYM *)(node))
1181
- #define RNODE_ATTRASGN(node) ((struct RNode_ATTRASGN *)(node))
1182
- #define RNODE_LAMBDA(node) ((struct RNode_LAMBDA *)(node))
1183
- #define RNODE_ARYPTN(node) ((struct RNode_ARYPTN *)(node))
1184
- #define RNODE_HSHPTN(node) ((struct RNode_HSHPTN *)(node))
1185
- #define RNODE_FNDPTN(node) ((struct RNode_FNDPTN *)(node))
1186
- #define RNODE_LINE(node) ((struct RNode_LINE *)(node))
1187
- #define RNODE_FILE(node) ((struct RNode_FILE *)(node))
1188
- #define RNODE_ENCODING(node) ((struct RNode_ENCODING *)(node))
1007
+ #define RNODE(obj) ((NODE *)(obj))
1008
+
1009
+ #define RNODE_SCOPE(node) ((rb_node_scope_t *)(node))
1010
+ #define RNODE_BLOCK(node) ((rb_node_block_t *)(node))
1011
+ #define RNODE_IF(node) ((rb_node_if_t *)(node))
1012
+ #define RNODE_UNLESS(node) ((rb_node_unless_t *)(node))
1013
+ #define RNODE_CASE(node) ((rb_node_case_t *)(node))
1014
+ #define RNODE_CASE2(node) ((rb_node_case2_t *)(node))
1015
+ #define RNODE_CASE3(node) ((rb_node_case3_t *)(node))
1016
+ #define RNODE_WHEN(node) ((rb_node_when_t *)(node))
1017
+ #define RNODE_IN(node) ((rb_node_in_t *)(node))
1018
+ #define RNODE_WHILE(node) ((rb_node_while_t *)(node))
1019
+ #define RNODE_UNTIL(node) ((rb_node_until_t *)(node))
1020
+ #define RNODE_ITER(node) ((rb_node_iter_t *)(node))
1021
+ #define RNODE_FOR(node) ((rb_node_for_t *)(node))
1022
+ #define RNODE_FOR_MASGN(node) ((rb_node_for_masgn_t *)(node))
1023
+ #define RNODE_BREAK(node) ((rb_node_break_t *)(node))
1024
+ #define RNODE_NEXT(node) ((rb_node_next_t *)(node))
1025
+ #define RNODE_REDO(node) ((rb_node_redo_t *)(node))
1026
+ #define RNODE_RETRY(node) ((rb_node_retry_t *)(node))
1027
+ #define RNODE_BEGIN(node) ((rb_node_begin_t *)(node))
1028
+ #define RNODE_RESCUE(node) ((rb_node_rescue_t *)(node))
1029
+ #define RNODE_RESBODY(node) ((rb_node_resbody_t *)(node))
1030
+ #define RNODE_ENSURE(node) ((rb_node_ensure_t *)(node))
1031
+ #define RNODE_AND(node) ((rb_node_and_t *)(node))
1032
+ #define RNODE_OR(node) ((rb_node_or_t *)(node))
1033
+ #define RNODE_MASGN(node) ((rb_node_masgn_t *)(node))
1034
+ #define RNODE_LASGN(node) ((rb_node_lasgn_t *)(node))
1035
+ #define RNODE_DASGN(node) ((rb_node_dasgn_t *)(node))
1036
+ #define RNODE_GASGN(node) ((rb_node_gasgn_t *)(node))
1037
+ #define RNODE_IASGN(node) ((rb_node_iasgn_t *)(node))
1038
+ #define RNODE_CDECL(node) ((rb_node_cdecl_t *)(node))
1039
+ #define RNODE_CVASGN(node) ((rb_node_cvasgn_t *)(node))
1040
+ #define RNODE_OP_ASGN1(node) ((rb_node_op_asgn1_t *)(node))
1041
+ #define RNODE_OP_ASGN2(node) ((rb_node_op_asgn2_t *)(node))
1042
+ #define RNODE_OP_ASGN_AND(node) ((rb_node_op_asgn_and_t *)(node))
1043
+ #define RNODE_OP_ASGN_OR(node) ((rb_node_op_asgn_or_t *)(node))
1044
+ #define RNODE_OP_CDECL(node) ((rb_node_op_cdecl_t *)(node))
1045
+ #define RNODE_CALL(node) ((rb_node_call_t *)(node))
1046
+ #define RNODE_OPCALL(node) ((rb_node_opcall_t *)(node))
1047
+ #define RNODE_FCALL(node) ((rb_node_fcall_t *)(node))
1048
+ #define RNODE_VCALL(node) ((rb_node_vcall_t *)(node))
1049
+ #define RNODE_QCALL(node) ((rb_node_qcall_t *)(node))
1050
+ #define RNODE_SUPER(node) ((rb_node_super_t *)(node))
1051
+ #define RNODE_ZSUPER(node) ((rb_node_zsuper_t *)(node))
1052
+ #define RNODE_LIST(node) ((rb_node_list_t *)(node))
1053
+ #define RNODE_ZLIST(node) ((rb_node_zlist_t *)(node))
1054
+ #define RNODE_HASH(node) ((rb_node_hash_t *)(node))
1055
+ #define RNODE_RETURN(node) ((rb_node_return_t *)(node))
1056
+ #define RNODE_YIELD(node) ((rb_node_yield_t *)(node))
1057
+ #define RNODE_LVAR(node) ((rb_node_lvar_t *)(node))
1058
+ #define RNODE_DVAR(node) ((rb_node_dvar_t *)(node))
1059
+ #define RNODE_GVAR(node) ((rb_node_gvar_t *)(node))
1060
+ #define RNODE_IVAR(node) ((rb_node_ivar_t *)(node))
1061
+ #define RNODE_CONST(node) ((rb_node_const_t *)(node))
1062
+ #define RNODE_CVAR(node) ((rb_node_cvar_t *)(node))
1063
+ #define RNODE_NTH_REF(node) ((rb_node_nth_ref_t *)(node))
1064
+ #define RNODE_BACK_REF(node) ((rb_node_back_ref_t *)(node))
1065
+ #define RNODE_MATCH(node) ((rb_node_match_t *)(node))
1066
+ #define RNODE_MATCH2(node) ((rb_node_match2_t *)(node))
1067
+ #define RNODE_MATCH3(node) ((rb_node_match3_t *)(node))
1068
+ #define RNODE_INTEGER(node) ((rb_node_integer_t *)(node))
1069
+ #define RNODE_FLOAT(node) ((rb_node_float_t *)(node))
1070
+ #define RNODE_RATIONAL(node) ((rb_node_rational_t *)(node))
1071
+ #define RNODE_IMAGINARY(node) ((rb_node_imaginary_t *)(node))
1072
+ #define RNODE_STR(node) ((rb_node_str_t *)(node))
1073
+ #define RNODE_DSTR(node) ((rb_node_dstr_t *)(node))
1074
+ #define RNODE_XSTR(node) ((rb_node_xstr_t *)(node))
1075
+ #define RNODE_DXSTR(node) ((rb_node_dxstr_t *)(node))
1076
+ #define RNODE_EVSTR(node) ((rb_node_evstr_t *)(node))
1077
+ #define RNODE_REGX(node) ((rb_node_regx_t *)(node))
1078
+ #define RNODE_DREGX(node) ((rb_node_dregx_t *)(node))
1079
+ #define RNODE_ONCE(node) ((rb_node_once_t *)(node))
1080
+ #define RNODE_ARGS(node) ((rb_node_args_t *)(node))
1081
+ #define RNODE_ARGS_AUX(node) ((rb_node_args_aux_t *)(node))
1082
+ #define RNODE_OPT_ARG(node) ((rb_node_opt_arg_t *)(node))
1083
+ #define RNODE_KW_ARG(node) ((rb_node_kw_arg_t *)(node))
1084
+ #define RNODE_POSTARG(node) ((rb_node_postarg_t *)(node))
1085
+ #define RNODE_ARGSCAT(node) ((rb_node_argscat_t *)(node))
1086
+ #define RNODE_ARGSPUSH(node) ((rb_node_argspush_t *)(node))
1087
+ #define RNODE_SPLAT(node) ((rb_node_splat_t *)(node))
1088
+ #define RNODE_BLOCK_PASS(node) ((rb_node_block_pass_t *)(node))
1089
+ #define RNODE_DEFN(node) ((rb_node_defn_t *)(node))
1090
+ #define RNODE_DEFS(node) ((rb_node_defs_t *)(node))
1091
+ #define RNODE_ALIAS(node) ((rb_node_alias_t *)(node))
1092
+ #define RNODE_VALIAS(node) ((rb_node_valias_t *)(node))
1093
+ #define RNODE_UNDEF(node) ((rb_node_undef_t *)(node))
1094
+ #define RNODE_CLASS(node) ((rb_node_class_t *)(node))
1095
+ #define RNODE_MODULE(node) ((rb_node_module_t *)(node))
1096
+ #define RNODE_SCLASS(node) ((rb_node_sclass_t *)(node))
1097
+ #define RNODE_COLON2(node) ((rb_node_colon2_t *)(node))
1098
+ #define RNODE_COLON3(node) ((rb_node_colon3_t *)(node))
1099
+ #define RNODE_DOT2(node) ((rb_node_dot2_t *)(node))
1100
+ #define RNODE_DOT3(node) ((rb_node_dot3_t *)(node))
1101
+ #define RNODE_FLIP2(node) ((rb_node_flip2_t *)(node))
1102
+ #define RNODE_FLIP3(node) ((rb_node_flip3_t *)(node))
1103
+ #define RNODE_SELF(node) ((rb_node_self_t *)(node))
1104
+ #define RNODE_NIL(node) ((rb_node_nil_t *)(node))
1105
+ #define RNODE_TRUE(node) ((rb_node_true_t *)(node))
1106
+ #define RNODE_FALSE(node) ((rb_node_false_t *)(node))
1107
+ #define RNODE_ERRINFO(node) ((rb_node_errinfo_t *)(node))
1108
+ #define RNODE_DEFINED(node) ((rb_node_defined_t *)(node))
1109
+ #define RNODE_POSTEXE(node) ((rb_node_postexe_t *)(node))
1110
+ #define RNODE_SYM(node) ((rb_node_sym_t *)(node))
1111
+ #define RNODE_DSYM(node) ((rb_node_dsym_t *)(node))
1112
+ #define RNODE_ATTRASGN(node) ((rb_node_attrasgn_t *)(node))
1113
+ #define RNODE_LAMBDA(node) ((rb_node_lambda_t *)(node))
1114
+ #define RNODE_ARYPTN(node) ((rb_node_aryptn_t *)(node))
1115
+ #define RNODE_HSHPTN(node) ((rb_node_hshptn_t *)(node))
1116
+ #define RNODE_FNDPTN(node) ((rb_node_fndptn_t *)(node))
1117
+ #define RNODE_LINE(node) ((rb_node_line_t *)(node))
1118
+ #define RNODE_FILE(node) ((rb_node_file_t *)(node))
1119
+ #define RNODE_ENCODING(node) ((rb_node_encoding_t *)(node))
1189
1120
 
1190
1121
  /* FL : 0..4: T_TYPES, 5: KEEP_WB, 6: PROMOTED, 7: FINALIZE, 8: UNUSED, 9: UNUSED, 10: EXIVAR, 11: FREEZE */
1191
1122
  /* NODE_FL: 0..4: UNUSED, 5: UNUSED, 6: UNUSED, 7: NODE_FL_NEWLINE,
@@ -1197,9 +1128,9 @@ typedef struct RNode_ERROR {
1197
1128
  #define NODE_TYPESHIFT 8
1198
1129
  #define NODE_TYPEMASK (((VALUE)0x7f)<<NODE_TYPESHIFT)
1199
1130
 
1200
- #define nd_fl_newline(n) (n)->flags & NODE_FL_NEWLINE
1201
- #define nd_set_fl_newline(n) (n)->flags |= NODE_FL_NEWLINE
1202
- #define nd_unset_fl_newline(n) (n)->flags &= ~NODE_FL_NEWLINE
1131
+ #define nd_fl_newline(n) ((n)->flags & NODE_FL_NEWLINE)
1132
+ #define nd_set_fl_newline(n) ((n)->flags |= NODE_FL_NEWLINE)
1133
+ #define nd_unset_fl_newline(n) ((n)->flags &= ~NODE_FL_NEWLINE)
1203
1134
 
1204
1135
  #define nd_type(n) ((int) ((RNODE(n)->flags & NODE_TYPEMASK)>>NODE_TYPESHIFT))
1205
1136
  #define nd_set_type(n,t) \
@@ -1263,7 +1194,6 @@ typedef struct rb_parser_config_struct {
1263
1194
  VALUE (*attr_get)(VALUE obj, ID id);
1264
1195
 
1265
1196
  /* Array */
1266
- VALUE (*ary_new)(void);
1267
1197
  VALUE (*ary_push)(VALUE ary, VALUE elem);
1268
1198
  VALUE (*ary_new_from_args)(long n, ...);
1269
1199
  VALUE (*ary_unshift)(VALUE ary, VALUE item);
@@ -1290,22 +1220,16 @@ typedef struct rb_parser_config_struct {
1290
1220
  RBIMPL_ATTR_FORMAT(RBIMPL_PRINTF_FORMAT, 2, 3)
1291
1221
  VALUE (*str_catf)(VALUE str, const char *format, ...);
1292
1222
  VALUE (*str_cat_cstr)(VALUE str, const char *ptr);
1293
- void (*str_modify)(VALUE str);
1294
- void (*str_set_len)(VALUE str, long len);
1295
- VALUE (*str_cat)(VALUE str, const char *ptr, long len);
1296
1223
  VALUE (*str_resize)(VALUE str, long len);
1297
1224
  VALUE (*str_new)(const char *ptr, long len);
1298
1225
  VALUE (*str_new_cstr)(const char *ptr);
1299
1226
  VALUE (*str_to_interned_str)(VALUE);
1300
- int (*is_ascii_string)(VALUE str);
1301
1227
  VALUE (*enc_str_new)(const char *ptr, long len, rb_encoding *enc);
1302
1228
  RBIMPL_ATTR_FORMAT(RBIMPL_PRINTF_FORMAT, 2, 0)
1303
1229
  VALUE (*str_vcatf)(VALUE str, const char *fmt, va_list ap);
1304
- char *(*string_value_cstr)(volatile VALUE *ptr);
1305
1230
  RBIMPL_ATTR_FORMAT(RBIMPL_PRINTF_FORMAT, 1, 2)
1306
1231
  VALUE (*rb_sprintf)(const char *format, ...);
1307
1232
  char *(*rstring_ptr)(VALUE str);
1308
- char *(*rstring_end)(VALUE str);
1309
1233
  long (*rstring_len)(VALUE str);
1310
1234
  VALUE (*obj_as_string)(VALUE);
1311
1235
 
@@ -1338,12 +1262,10 @@ typedef struct rb_parser_config_struct {
1338
1262
  rb_encoding *(*ascii8bit_encoding)(void);
1339
1263
  int (*enc_codelen)(int c, rb_encoding *enc);
1340
1264
  int (*enc_mbcput)(unsigned int c, void *buf, rb_encoding *enc);
1341
- int (*enc_mbclen)(const char *p, const char *e, rb_encoding *enc);
1342
1265
  int (*enc_find_index)(const char *name);
1343
1266
  rb_encoding *(*enc_from_index)(int idx);
1344
1267
  int (*enc_isspace)(OnigCodePoint c, rb_encoding *enc);
1345
1268
  rb_encoding *(*usascii_encoding)(void);
1346
- int enc_coderange_broken;
1347
1269
  int (*enc_mbminlen)(rb_encoding *enc);
1348
1270
  bool (*enc_isascii)(OnigCodePoint c, rb_encoding *enc);
1349
1271
  OnigCodePoint (*enc_mbc_to_codepoint)(const char *p, const char *e, rb_encoding *enc);
@@ -1422,9 +1344,6 @@ rb_parser_t *rb_ruby_parser_allocate(const rb_parser_config_t *config);
1422
1344
  rb_parser_t *rb_ruby_parser_new(const rb_parser_config_t *config);
1423
1345
  #endif
1424
1346
 
1425
- long rb_parser_string_length(rb_parser_string_t *str);
1426
- char *rb_parser_string_pointer(rb_parser_string_t *str);
1427
-
1428
1347
  RUBY_SYMBOL_EXPORT_END
1429
1348
 
1430
1349
  #endif /* RUBY_RUBYPARSER_H */