datadog-ruby_core_source 3.3.6 → 3.3.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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 */