datadog-ruby_core_source 3.3.7 → 3.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (211) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.datadog.md +5 -0
  3. data/datadog-ruby_core_source.gemspec +1 -1
  4. data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/id.h +2 -0
  5. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/error.h +26 -0
  6. data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/gc.h +1 -0
  7. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/parse.h +2 -1
  8. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/proc.h +1 -0
  9. data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/sanitizers.h +24 -36
  10. data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/prism/ast.h +10 -0
  11. data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/extension.h +1 -1
  12. data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/prism/version.h +2 -2
  13. data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/ractor_core.h +1 -0
  14. data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/rubyparser.h +3 -1
  15. data/lib/datadog/ruby_core_source/version.rb +1 -1
  16. metadata +106 -209
  17. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/id.h +0 -347
  18. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/basic_operators.h +0 -64
  19. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/bits.h +0 -568
  20. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/encoding.h +0 -36
  21. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/fixnum.h +0 -184
  22. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/gc.h +0 -322
  23. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/imemo.h +0 -261
  24. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/io.h +0 -143
  25. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/ractor.h +0 -6
  26. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/sanitizers.h +0 -326
  27. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/string.h +0 -186
  28. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/thread.h +0 -85
  29. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/vm.h +0 -137
  30. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/method.h +0 -255
  31. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/prism/ast.h +0 -7524
  32. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/prism/defines.h +0 -242
  33. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/prism/diagnostic.h +0 -450
  34. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/prism/prism.h +0 -336
  35. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/prism/version.h +0 -29
  36. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/prism_compile.h +0 -99
  37. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/ractor_core.h +0 -382
  38. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/rubyparser.h +0 -1350
  39. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/thread_pthread.h +0 -168
  40. data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_core.h +0 -2222
  41. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/ccan/build_assert/build_assert.h +0 -40
  42. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/ccan/check_type/check_type.h +0 -63
  43. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/ccan/container_of/container_of.h +0 -142
  44. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/ccan/list/list.h +0 -791
  45. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/ccan/str/str.h +0 -17
  46. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/id_table.h +0 -39
  47. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/array.h +0 -152
  48. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/bignum.h +0 -244
  49. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/class.h +0 -283
  50. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/cmdlineopt.h +0 -65
  51. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/compar.h +0 -29
  52. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/compile.h +0 -34
  53. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/compilers.h +0 -107
  54. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/complex.h +0 -29
  55. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/cont.h +0 -35
  56. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/dir.h +0 -16
  57. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/enc.h +0 -19
  58. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/enum.h +0 -18
  59. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/enumerator.h +0 -21
  60. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/error.h +0 -218
  61. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/eval.h +0 -33
  62. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/file.h +0 -38
  63. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/hash.h +0 -192
  64. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/inits.h +0 -47
  65. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/load.h +0 -18
  66. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/loadpath.h +0 -16
  67. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/math.h +0 -23
  68. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/missing.h +0 -19
  69. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/numeric.h +0 -274
  70. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/object.h +0 -63
  71. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/parse.h +0 -129
  72. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/proc.h +0 -30
  73. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/process.h +0 -124
  74. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/random.h +0 -17
  75. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/range.h +0 -40
  76. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/rational.h +0 -71
  77. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/re.h +0 -28
  78. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/ruby_parser.h +0 -102
  79. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/serial.h +0 -23
  80. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/signal.h +0 -24
  81. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/st.h +0 -11
  82. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/static_assert.h +0 -16
  83. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/struct.h +0 -127
  84. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/symbol.h +0 -45
  85. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/time.h +0 -34
  86. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/transcode.h +0 -23
  87. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/util.h +0 -27
  88. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/variable.h +0 -72
  89. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal/warnings.h +0 -16
  90. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/internal.h +0 -108
  91. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/iseq.h +0 -340
  92. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/node.h +0 -111
  93. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/parser_st.h +0 -162
  94. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/parser_value.h +0 -106
  95. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/prism/encoding.h +0 -283
  96. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/prism/extension.h +0 -19
  97. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/prism/node.h +0 -129
  98. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/prism/options.h +0 -396
  99. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/prism/pack.h +0 -163
  100. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/prism/parser.h +0 -933
  101. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/prism/prettyprint.h +0 -34
  102. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/prism/regexp.h +0 -43
  103. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/prism/static_literals.h +0 -121
  104. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/prism/util/pm_buffer.h +0 -218
  105. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/prism/util/pm_char.h +0 -204
  106. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/prism/util/pm_constant_pool.h +0 -218
  107. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/prism/util/pm_integer.h +0 -126
  108. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/prism/util/pm_list.h +0 -97
  109. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/prism/util/pm_memchr.h +0 -29
  110. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/prism/util/pm_newline_list.h +0 -113
  111. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/prism/util/pm_string.h +0 -190
  112. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/prism/util/pm_strncasecmp.h +0 -32
  113. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/prism/util/pm_strpbrk.h +0 -46
  114. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/ruby_assert.h +0 -14
  115. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/ruby_atomic.h +0 -23
  116. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/shape.h +0 -234
  117. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/thread_none.h +0 -21
  118. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/vm_debug.h +0 -124
  119. data/lib/datadog/ruby_core_source/ruby-3.4.0-rc1/vm_opts.h +0 -67
  120. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/ccan/build_assert/build_assert.h +0 -0
  121. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/ccan/check_type/check_type.h +0 -0
  122. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/ccan/container_of/container_of.h +0 -0
  123. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/ccan/list/list.h +0 -0
  124. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/ccan/str/str.h +0 -0
  125. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/id_table.h +0 -0
  126. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/array.h +0 -0
  127. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/basic_operators.h +0 -0
  128. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/bignum.h +0 -0
  129. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/bits.h +0 -0
  130. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/class.h +0 -0
  131. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/cmdlineopt.h +0 -0
  132. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/compar.h +0 -0
  133. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/compile.h +0 -0
  134. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/compilers.h +0 -0
  135. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/complex.h +0 -0
  136. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/cont.h +0 -0
  137. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/dir.h +0 -0
  138. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/enc.h +0 -0
  139. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/encoding.h +0 -0
  140. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/enum.h +0 -0
  141. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/enumerator.h +0 -0
  142. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/eval.h +0 -0
  143. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/file.h +0 -0
  144. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/fixnum.h +0 -0
  145. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/hash.h +0 -0
  146. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/imemo.h +0 -0
  147. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/inits.h +0 -0
  148. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/io.h +0 -0
  149. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/load.h +0 -0
  150. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/loadpath.h +0 -0
  151. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/math.h +0 -0
  152. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/missing.h +0 -0
  153. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/numeric.h +0 -0
  154. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/object.h +0 -0
  155. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/process.h +0 -0
  156. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/ractor.h +0 -0
  157. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/random.h +0 -0
  158. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/range.h +0 -0
  159. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/rational.h +0 -0
  160. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/re.h +0 -0
  161. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/ruby_parser.h +0 -0
  162. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/serial.h +0 -0
  163. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/signal.h +0 -0
  164. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/st.h +0 -0
  165. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/static_assert.h +0 -0
  166. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/string.h +0 -0
  167. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/struct.h +0 -0
  168. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/symbol.h +0 -0
  169. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/thread.h +0 -0
  170. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/time.h +0 -0
  171. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/transcode.h +0 -0
  172. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/util.h +0 -0
  173. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/variable.h +0 -0
  174. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/internal/vm.h +0 -0
  175. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/warnings.h +0 -0
  176. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal.h +0 -0
  177. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/iseq.h +0 -0
  178. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/method.h +0 -0
  179. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/node.h +0 -0
  180. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/parser_st.h +0 -0
  181. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/parser_value.h +0 -0
  182. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/prism/defines.h +0 -0
  183. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/prism/diagnostic.h +0 -0
  184. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/encoding.h +0 -0
  185. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/node.h +0 -0
  186. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/options.h +0 -0
  187. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/pack.h +0 -0
  188. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/parser.h +0 -0
  189. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/prettyprint.h +0 -0
  190. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/prism/prism.h +0 -0
  191. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/regexp.h +0 -0
  192. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/static_literals.h +0 -0
  193. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_buffer.h +0 -0
  194. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_char.h +0 -0
  195. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_constant_pool.h +0 -0
  196. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_integer.h +0 -0
  197. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_list.h +0 -0
  198. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_memchr.h +0 -0
  199. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_newline_list.h +0 -0
  200. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_string.h +0 -0
  201. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_strncasecmp.h +0 -0
  202. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_strpbrk.h +0 -0
  203. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/prism_compile.h +0 -0
  204. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/ruby_assert.h +0 -0
  205. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/ruby_atomic.h +0 -0
  206. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/shape.h +0 -0
  207. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/thread_none.h +0 -0
  208. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/thread_pthread.h +0 -0
  209. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-rc1 → ruby-3.4.0-p0}/vm_core.h +0 -0
  210. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/vm_debug.h +0 -0
  211. /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/vm_opts.h +0 -0
@@ -1,382 +0,0 @@
1
- #include "internal/gc.h"
2
- #include "ruby/ruby.h"
3
- #include "ruby/ractor.h"
4
- #include "vm_core.h"
5
- #include "id_table.h"
6
- #include "vm_debug.h"
7
-
8
- #ifndef RACTOR_CHECK_MODE
9
- #define RACTOR_CHECK_MODE (VM_CHECK_MODE || RUBY_DEBUG) && (SIZEOF_UINT64_T == SIZEOF_VALUE)
10
- #endif
11
-
12
- enum rb_ractor_basket_type {
13
- // basket is empty
14
- basket_type_none,
15
-
16
- // value is available
17
- basket_type_ref,
18
- basket_type_copy,
19
- basket_type_move,
20
- basket_type_will,
21
-
22
- // basket should be deleted
23
- basket_type_deleted,
24
-
25
- // basket is reserved
26
- basket_type_reserved,
27
-
28
- // take_basket is available
29
- basket_type_take_basket,
30
-
31
- // basket is keeping by yielding ractor
32
- basket_type_yielding,
33
- };
34
-
35
- // per ractor taking configuration
36
- struct rb_ractor_selector_take_config {
37
- bool closed;
38
- bool oneshot;
39
- };
40
-
41
- struct rb_ractor_basket {
42
- union {
43
- enum rb_ractor_basket_type e;
44
- rb_atomic_t atomic;
45
- } type;
46
- VALUE sender;
47
-
48
- union {
49
- struct {
50
- VALUE v;
51
- bool exception;
52
- } send;
53
-
54
- struct {
55
- struct rb_ractor_basket *basket;
56
- struct rb_ractor_selector_take_config *config;
57
- } take;
58
- } p; // payload
59
- };
60
-
61
- static inline bool
62
- basket_type_p(struct rb_ractor_basket *b, enum rb_ractor_basket_type type)
63
- {
64
- return b->type.e == type;
65
- }
66
-
67
- static inline bool
68
- basket_none_p(struct rb_ractor_basket *b)
69
- {
70
- return basket_type_p(b, basket_type_none);
71
- }
72
-
73
- struct rb_ractor_queue {
74
- struct rb_ractor_basket *baskets;
75
- int start;
76
- int cnt;
77
- int size;
78
- unsigned int serial;
79
- unsigned int reserved_cnt;
80
- };
81
-
82
- enum rb_ractor_wait_status {
83
- wait_none = 0x00,
84
- wait_receiving = 0x01,
85
- wait_taking = 0x02,
86
- wait_yielding = 0x04,
87
- wait_moving = 0x08,
88
- };
89
-
90
- enum rb_ractor_wakeup_status {
91
- wakeup_none,
92
- wakeup_by_send,
93
- wakeup_by_yield,
94
- wakeup_by_take,
95
- wakeup_by_close,
96
- wakeup_by_interrupt,
97
- wakeup_by_retry,
98
- };
99
-
100
- struct rb_ractor_sync {
101
- // ractor lock
102
- rb_nativethread_lock_t lock;
103
- #if RACTOR_CHECK_MODE > 0
104
- VALUE locked_by;
105
- #endif
106
-
107
- bool incoming_port_closed;
108
- bool outgoing_port_closed;
109
-
110
- // All sent messages will be pushed into recv_queue
111
- struct rb_ractor_queue recv_queue;
112
-
113
- // The following ractors waiting for the yielding by this ractor
114
- struct rb_ractor_queue takers_queue;
115
-
116
- // Enabled if the ractor already terminated and not taken yet.
117
- struct rb_ractor_basket will_basket;
118
-
119
- struct ractor_wait {
120
- enum rb_ractor_wait_status status;
121
- enum rb_ractor_wakeup_status wakeup_status;
122
- rb_thread_t *waiting_thread;
123
- } wait;
124
-
125
- #ifndef RUBY_THREAD_PTHREAD_H
126
- rb_nativethread_cond_t cond;
127
- #endif
128
- };
129
-
130
- // created
131
- // | ready to run
132
- // ====================== inserted to vm->ractor
133
- // v
134
- // blocking <---+ all threads are blocking
135
- // | |
136
- // v |
137
- // running -----+
138
- // | all threads are terminated.
139
- // ====================== removed from vm->ractor
140
- // v
141
- // terminated
142
- //
143
- // status is protected by VM lock (global state)
144
- enum ractor_status {
145
- ractor_created,
146
- ractor_running,
147
- ractor_blocking,
148
- ractor_terminated,
149
- };
150
-
151
- struct rb_ractor_struct {
152
- struct rb_ractor_pub pub;
153
-
154
- struct rb_ractor_sync sync;
155
- VALUE receiving_mutex;
156
-
157
- // vm wide barrier synchronization
158
- rb_nativethread_cond_t barrier_wait_cond;
159
-
160
- // thread management
161
- struct {
162
- struct ccan_list_head set;
163
- unsigned int cnt;
164
- unsigned int blocking_cnt;
165
- unsigned int sleeper;
166
- struct rb_thread_sched sched;
167
- rb_execution_context_t *running_ec;
168
- rb_thread_t *main;
169
- } threads;
170
- VALUE thgroup_default;
171
-
172
- VALUE name;
173
- VALUE loc;
174
-
175
- enum ractor_status status_;
176
-
177
- struct ccan_list_node vmlr_node;
178
-
179
- // ractor local data
180
-
181
- st_table *local_storage;
182
- struct rb_id_table *idkey_local_storage;
183
-
184
- VALUE r_stdin;
185
- VALUE r_stdout;
186
- VALUE r_stderr;
187
- VALUE verbose;
188
- VALUE debug;
189
-
190
- void *newobj_cache;
191
- }; // rb_ractor_t is defined in vm_core.h
192
-
193
-
194
- static inline VALUE
195
- rb_ractor_self(const rb_ractor_t *r)
196
- {
197
- return r->pub.self;
198
- }
199
-
200
- rb_ractor_t *rb_ractor_main_alloc(void);
201
- void rb_ractor_main_setup(rb_vm_t *vm, rb_ractor_t *main_ractor, rb_thread_t *main_thread);
202
- void rb_ractor_atexit(rb_execution_context_t *ec, VALUE result);
203
- void rb_ractor_atexit_exception(rb_execution_context_t *ec);
204
- void rb_ractor_teardown(rb_execution_context_t *ec);
205
- void rb_ractor_receive_parameters(rb_execution_context_t *ec, rb_ractor_t *g, int len, VALUE *ptr);
206
- void rb_ractor_send_parameters(rb_execution_context_t *ec, rb_ractor_t *g, VALUE args);
207
-
208
- VALUE rb_thread_create_ractor(rb_ractor_t *g, VALUE args, VALUE proc); // defined in thread.c
209
-
210
- int rb_ractor_living_thread_num(const rb_ractor_t *);
211
- VALUE rb_ractor_thread_list(void);
212
- bool rb_ractor_p(VALUE rv);
213
-
214
- void rb_ractor_living_threads_init(rb_ractor_t *r);
215
- void rb_ractor_living_threads_insert(rb_ractor_t *r, rb_thread_t *th);
216
- void rb_ractor_living_threads_remove(rb_ractor_t *r, rb_thread_t *th);
217
- void rb_ractor_blocking_threads_inc(rb_ractor_t *r, const char *file, int line); // TODO: file, line only for RUBY_DEBUG_LOG
218
- void rb_ractor_blocking_threads_dec(rb_ractor_t *r, const char *file, int line); // TODO: file, line only for RUBY_DEBUG_LOG
219
-
220
- void rb_ractor_vm_barrier_interrupt_running_thread(rb_ractor_t *r);
221
- void rb_ractor_terminate_interrupt_main_thread(rb_ractor_t *r);
222
- void rb_ractor_terminate_all(void);
223
- bool rb_ractor_main_p_(void);
224
- void rb_ractor_atfork(rb_vm_t *vm, rb_thread_t *th);
225
-
226
- VALUE rb_ractor_ensure_shareable(VALUE obj, VALUE name);
227
-
228
- RUBY_SYMBOL_EXPORT_BEGIN
229
- void rb_ractor_finish_marking(void);
230
-
231
- bool rb_ractor_shareable_p_continue(VALUE obj);
232
-
233
- // THIS FUNCTION SHOULD NOT CALL WHILE INCREMENTAL MARKING!!
234
- // This function is for T_DATA::free_func
235
- void rb_ractor_local_storage_delkey(rb_ractor_local_key_t key);
236
-
237
- RUBY_SYMBOL_EXPORT_END
238
-
239
- static inline bool
240
- rb_ractor_main_p(void)
241
- {
242
- if (ruby_single_main_ractor) {
243
- return true;
244
- }
245
- else {
246
- return rb_ractor_main_p_();
247
- }
248
- }
249
-
250
- static inline bool
251
- rb_ractor_status_p(rb_ractor_t *r, enum ractor_status status)
252
- {
253
- return r->status_ == status;
254
- }
255
-
256
- static inline void
257
- rb_ractor_sleeper_threads_inc(rb_ractor_t *r)
258
- {
259
- r->threads.sleeper++;
260
- }
261
-
262
- static inline void
263
- rb_ractor_sleeper_threads_dec(rb_ractor_t *r)
264
- {
265
- r->threads.sleeper--;
266
- }
267
-
268
- static inline void
269
- rb_ractor_sleeper_threads_clear(rb_ractor_t *r)
270
- {
271
- r->threads.sleeper = 0;
272
- }
273
-
274
- static inline int
275
- rb_ractor_sleeper_thread_num(rb_ractor_t *r)
276
- {
277
- return r->threads.sleeper;
278
- }
279
-
280
- static inline void
281
- rb_ractor_thread_switch(rb_ractor_t *cr, rb_thread_t *th)
282
- {
283
- RUBY_DEBUG_LOG("th:%d->%u%s",
284
- cr->threads.running_ec ? (int)rb_th_serial(cr->threads.running_ec->thread_ptr) : -1,
285
- rb_th_serial(th), cr->threads.running_ec == th->ec ? " (same)" : "");
286
-
287
- if (cr->threads.running_ec != th->ec) {
288
- if (0) {
289
- ruby_debug_printf("rb_ractor_thread_switch ec:%p->%p\n",
290
- (void *)cr->threads.running_ec, (void *)th->ec);
291
- }
292
- }
293
- else {
294
- return;
295
- }
296
-
297
- if (cr->threads.running_ec != th->ec) {
298
- th->running_time_us = 0;
299
- }
300
-
301
- cr->threads.running_ec = th->ec;
302
-
303
- VM_ASSERT(cr == GET_RACTOR());
304
- }
305
-
306
- #define rb_ractor_set_current_ec(cr, ec) rb_ractor_set_current_ec_(cr, ec, __FILE__, __LINE__)
307
-
308
- static inline void
309
- rb_ractor_set_current_ec_(rb_ractor_t *cr, rb_execution_context_t *ec, const char *file, int line)
310
- {
311
- #ifdef RB_THREAD_LOCAL_SPECIFIER
312
-
313
- # ifdef __APPLE__
314
- rb_current_ec_set(ec);
315
- # else
316
- ruby_current_ec = ec;
317
- # endif
318
-
319
- #else
320
- native_tls_set(ruby_current_ec_key, ec);
321
- #endif
322
- RUBY_DEBUG_LOG2(file, line, "ec:%p->%p", (void *)cr->threads.running_ec, (void *)ec);
323
- VM_ASSERT(ec == NULL || cr->threads.running_ec != ec);
324
- cr->threads.running_ec = ec;
325
- }
326
-
327
- void rb_vm_ractor_blocking_cnt_inc(rb_vm_t *vm, rb_ractor_t *cr, const char *file, int line);
328
- void rb_vm_ractor_blocking_cnt_dec(rb_vm_t *vm, rb_ractor_t *cr, const char *file, int line);
329
-
330
- static inline uint32_t
331
- rb_ractor_id(const rb_ractor_t *r)
332
- {
333
- return r->pub.id;
334
- }
335
-
336
- #if RACTOR_CHECK_MODE > 0
337
- # define RACTOR_BELONGING_ID(obj) (*(uint32_t *)(((uintptr_t)(obj)) + rb_gc_obj_slot_size(obj)))
338
-
339
- uint32_t rb_ractor_current_id(void);
340
-
341
- static inline void
342
- rb_ractor_setup_belonging_to(VALUE obj, uint32_t rid)
343
- {
344
- RACTOR_BELONGING_ID(obj) = rid;
345
- }
346
-
347
- static inline uint32_t
348
- rb_ractor_belonging(VALUE obj)
349
- {
350
- if (SPECIAL_CONST_P(obj) || RB_OBJ_SHAREABLE_P(obj)) {
351
- return 0;
352
- }
353
- else {
354
- return RACTOR_BELONGING_ID(obj);
355
- }
356
- }
357
-
358
- static inline VALUE
359
- rb_ractor_confirm_belonging(VALUE obj)
360
- {
361
- uint32_t id = rb_ractor_belonging(obj);
362
-
363
- if (id == 0) {
364
- if (UNLIKELY(!rb_ractor_shareable_p(obj))) {
365
- rp(obj);
366
- rb_bug("id == 0 but not shareable");
367
- }
368
- }
369
- else if (UNLIKELY(id != rb_ractor_current_id())) {
370
- if (rb_ractor_shareable_p(obj)) {
371
- // ok
372
- }
373
- else {
374
- rp(obj);
375
- rb_bug("rb_ractor_confirm_belonging object-ractor id:%u, current-ractor id:%u", id, rb_ractor_current_id());
376
- }
377
- }
378
- return obj;
379
- }
380
- #else
381
- #define rb_ractor_confirm_belonging(obj) obj
382
- #endif