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,184 +0,0 @@
1
- #ifndef INTERNAL_FIXNUM_H /*-*-C-*-vi:se ft=c:*/
2
- #define INTERNAL_FIXNUM_H
3
- /**
4
- * @author Ruby developers <ruby-core@ruby-lang.org>
5
- * @copyright This file is a part of the programming language Ruby.
6
- * Permission is hereby granted, to either redistribute and/or
7
- * modify this file, provided that the conditions mentioned in the
8
- * file COPYING are met. Consult the file for details.
9
- * @brief Internal header for Fixnums.
10
- */
11
- #include "ruby/internal/config.h" /* for HAVE_LONG_LONG */
12
- #include <limits.h> /* for CHAR_BIT */
13
- #include "internal/compilers.h" /* for __has_builtin */
14
- #include "ruby/internal/stdbool.h" /* for bool */
15
- #include "ruby/intern.h" /* for rb_big_mul */
16
- #include "ruby/ruby.h" /* for RB_FIXABLE */
17
-
18
- #if HAVE_LONG_LONG && SIZEOF_LONG * 2 <= SIZEOF_LONG_LONG
19
- # define DLONG LONG_LONG
20
- # define DL2NUM(x) LL2NUM(x)
21
- #elif defined(HAVE_INT128_T) && !(defined(__OpenBSD__) && defined(__mips64__))
22
- # define DLONG int128_t
23
- # define DL2NUM(x) (RB_FIXABLE(x) ? LONG2FIX(x) : rb_int128t2big(x))
24
- VALUE rb_int128t2big(int128_t n); /* in bignum.c */
25
- #endif
26
-
27
- static inline long rb_overflowed_fix_to_int(long x);
28
- static inline VALUE rb_fix_plus_fix(VALUE x, VALUE y);
29
- static inline VALUE rb_fix_minus_fix(VALUE x, VALUE y);
30
- static inline VALUE rb_fix_mul_fix(VALUE x, VALUE y);
31
- static inline void rb_fix_divmod_fix(VALUE x, VALUE y, VALUE *divp, VALUE *modp);
32
- static inline VALUE rb_fix_div_fix(VALUE x, VALUE y);
33
- static inline VALUE rb_fix_mod_fix(VALUE x, VALUE y);
34
- static inline bool FIXNUM_POSITIVE_P(VALUE num);
35
- static inline bool FIXNUM_NEGATIVE_P(VALUE num);
36
- static inline bool FIXNUM_ZERO_P(VALUE num);
37
-
38
- static inline long
39
- rb_overflowed_fix_to_int(long x)
40
- {
41
- return (long)((unsigned long)(x >> 1) ^ (1LU << (SIZEOF_LONG * CHAR_BIT - 1)));
42
- }
43
-
44
- static inline VALUE
45
- rb_fix_plus_fix(VALUE x, VALUE y)
46
- {
47
- #if !__has_builtin(__builtin_add_overflow)
48
- long lz = FIX2LONG(x) + FIX2LONG(y);
49
- return LONG2NUM(lz);
50
- #else
51
- long lz;
52
- /* NOTE
53
- * (1) `LONG2FIX(FIX2LONG(x)+FIX2LONG(y))`
54
- + = `((lx*2+1)/2 + (ly*2+1)/2)*2+1`
55
- + = `lx*2 + ly*2 + 1`
56
- + = `(lx*2+1) + (ly*2+1) - 1`
57
- + = `x + y - 1`
58
- * (2) Fixnum's LSB is always 1.
59
- * It means you can always run `x - 1` without overflow.
60
- * (3) Of course `z = x + (y-1)` may overflow.
61
- * At that time true value is
62
- * * positive: 0b0 1xxx...1, and z = 0b1xxx...1
63
- * * negative: 0b1 0xxx...1, and z = 0b0xxx...1
64
- * To convert this true value to long,
65
- * (a) Use arithmetic shift
66
- * * positive: 0b11xxx...
67
- * * negative: 0b00xxx...
68
- * (b) invert MSB
69
- * * positive: 0b01xxx...
70
- * * negative: 0b10xxx...
71
- */
72
- if (__builtin_add_overflow((long)x, (long)y-1, &lz)) {
73
- return rb_int2big(rb_overflowed_fix_to_int(lz));
74
- }
75
- else {
76
- return (VALUE)lz;
77
- }
78
- #endif
79
- }
80
-
81
- static inline VALUE
82
- rb_fix_minus_fix(VALUE x, VALUE y)
83
- {
84
- #if !__has_builtin(__builtin_sub_overflow)
85
- long lz = FIX2LONG(x) - FIX2LONG(y);
86
- return LONG2NUM(lz);
87
- #else
88
- long lz;
89
- if (__builtin_sub_overflow((long)x, (long)y-1, &lz)) {
90
- return rb_int2big(rb_overflowed_fix_to_int(lz));
91
- }
92
- else {
93
- return (VALUE)lz;
94
- }
95
- #endif
96
- }
97
-
98
- /* arguments must be Fixnum */
99
- static inline VALUE
100
- rb_fix_mul_fix(VALUE x, VALUE y)
101
- {
102
- long lx = FIX2LONG(x);
103
- long ly = FIX2LONG(y);
104
- #ifdef DLONG
105
- return DL2NUM((DLONG)lx * (DLONG)ly);
106
- #else
107
- if (MUL_OVERFLOW_FIXNUM_P(lx, ly)) {
108
- return rb_big_mul(rb_int2big(lx), rb_int2big(ly));
109
- }
110
- else {
111
- return LONG2FIX(lx * ly);
112
- }
113
- #endif
114
- }
115
-
116
- /*
117
- * This behaves different from C99 for negative arguments.
118
- * Note that div may overflow fixnum.
119
- */
120
- static inline void
121
- rb_fix_divmod_fix(VALUE a, VALUE b, VALUE *divp, VALUE *modp)
122
- {
123
- /* assume / and % comply C99.
124
- * ldiv(3) won't be inlined by GCC and clang.
125
- * I expect / and % are compiled as single idiv.
126
- */
127
- long x = FIX2LONG(a);
128
- long y = FIX2LONG(b);
129
- long div, mod;
130
- if (x == FIXNUM_MIN && y == -1) {
131
- if (divp) *divp = LONG2NUM(-FIXNUM_MIN);
132
- if (modp) *modp = LONG2FIX(0);
133
- return;
134
- }
135
- div = x / y;
136
- mod = x % y;
137
- if (y > 0 ? mod < 0 : mod > 0) {
138
- mod += y;
139
- div -= 1;
140
- }
141
- if (divp) *divp = LONG2FIX(div);
142
- if (modp) *modp = LONG2FIX(mod);
143
- }
144
-
145
- /* div() for Ruby
146
- * This behaves different from C99 for negative arguments.
147
- */
148
- static inline VALUE
149
- rb_fix_div_fix(VALUE x, VALUE y)
150
- {
151
- VALUE div;
152
- rb_fix_divmod_fix(x, y, &div, NULL);
153
- return div;
154
- }
155
-
156
- /* mod() for Ruby
157
- * This behaves different from C99 for negative arguments.
158
- */
159
- static inline VALUE
160
- rb_fix_mod_fix(VALUE x, VALUE y)
161
- {
162
- VALUE mod;
163
- rb_fix_divmod_fix(x, y, NULL, &mod);
164
- return mod;
165
- }
166
-
167
- static inline bool
168
- FIXNUM_POSITIVE_P(VALUE num)
169
- {
170
- return (SIGNED_VALUE)num > (SIGNED_VALUE)INT2FIX(0);
171
- }
172
-
173
- static inline bool
174
- FIXNUM_NEGATIVE_P(VALUE num)
175
- {
176
- return (SIGNED_VALUE)num < 0;
177
- }
178
-
179
- static inline bool
180
- FIXNUM_ZERO_P(VALUE num)
181
- {
182
- return num == INT2FIX(0);
183
- }
184
- #endif /* INTERNAL_FIXNUM_H */
@@ -1,322 +0,0 @@
1
- #ifndef INTERNAL_GC_H /*-*-C-*-vi:se ft=c:*/
2
- #define INTERNAL_GC_H
3
- /**
4
- * @author Ruby developers <ruby-core@ruby-lang.org>
5
- * @copyright This file is a part of the programming language Ruby.
6
- * Permission is hereby granted, to either redistribute and/or
7
- * modify this file, provided that the conditions mentioned in the
8
- * file COPYING are met. Consult the file for details.
9
- * @brief Internal header for GC.
10
- */
11
- #include "ruby/internal/config.h"
12
-
13
- #include <stddef.h> /* for size_t */
14
-
15
- #include "internal/compilers.h" /* for __has_attribute */
16
- #include "ruby/ruby.h" /* for rb_event_flag_t */
17
- #include "vm_core.h" /* for GET_EC() */
18
-
19
- #ifndef USE_SHARED_GC
20
- # define USE_SHARED_GC 0
21
- #endif
22
-
23
- #if defined(__x86_64__) && !defined(_ILP32) && defined(__GNUC__)
24
- #define SET_MACHINE_STACK_END(p) __asm__ __volatile__ ("movq\t%%rsp, %0" : "=r" (*(p)))
25
- #elif defined(__i386) && defined(__GNUC__)
26
- #define SET_MACHINE_STACK_END(p) __asm__ __volatile__ ("movl\t%%esp, %0" : "=r" (*(p)))
27
- #elif (defined(__powerpc__) || defined(__powerpc64__)) && defined(__GNUC__) && !defined(_AIX) && !defined(__APPLE__) // Not Apple is NEEDED to unbreak ppc64 build on Darwin. Don't ask.
28
- #define SET_MACHINE_STACK_END(p) __asm__ __volatile__ ("mr\t%0, %%r1" : "=r" (*(p)))
29
- #elif (defined(__powerpc__) || defined(__powerpc64__)) && defined(__GNUC__) && defined(_AIX)
30
- #define SET_MACHINE_STACK_END(p) __asm__ __volatile__ ("mr %0,1" : "=r" (*(p)))
31
- #elif defined(__POWERPC__) && defined(__APPLE__) // Darwin ppc and ppc64
32
- #define SET_MACHINE_STACK_END(p) __asm__ volatile("mr %0, r1" : "=r" (*(p)))
33
- #elif defined(__aarch64__) && defined(__GNUC__)
34
- #define SET_MACHINE_STACK_END(p) __asm__ __volatile__ ("mov\t%0, sp" : "=r" (*(p)))
35
- #else
36
- NOINLINE(void rb_gc_set_stack_end(VALUE **stack_end_p));
37
- #define SET_MACHINE_STACK_END(p) rb_gc_set_stack_end(p)
38
- #define USE_CONSERVATIVE_STACK_END
39
- #endif
40
-
41
- /* for GC debug */
42
-
43
- #ifndef RUBY_MARK_FREE_DEBUG
44
- #define RUBY_MARK_FREE_DEBUG 0
45
- #endif
46
-
47
- #if RUBY_MARK_FREE_DEBUG
48
- extern int ruby_gc_debug_indent;
49
-
50
- static inline void
51
- rb_gc_debug_indent(void)
52
- {
53
- ruby_debug_printf("%*s", ruby_gc_debug_indent, "");
54
- }
55
-
56
- static inline void
57
- rb_gc_debug_body(const char *mode, const char *msg, int st, void *ptr)
58
- {
59
- if (st == 0) {
60
- ruby_gc_debug_indent--;
61
- }
62
- rb_gc_debug_indent();
63
- ruby_debug_printf("%s: %s %s (%p)\n", mode, st ? "->" : "<-", msg, ptr);
64
-
65
- if (st) {
66
- ruby_gc_debug_indent++;
67
- }
68
-
69
- fflush(stdout);
70
- }
71
-
72
- #define RUBY_MARK_ENTER(msg) rb_gc_debug_body("mark", (msg), 1, ptr)
73
- #define RUBY_MARK_LEAVE(msg) rb_gc_debug_body("mark", (msg), 0, ptr)
74
- #define RUBY_FREE_ENTER(msg) rb_gc_debug_body("free", (msg), 1, ptr)
75
- #define RUBY_FREE_LEAVE(msg) rb_gc_debug_body("free", (msg), 0, ptr)
76
- #define RUBY_GC_INFO rb_gc_debug_indent(), ruby_debug_printf
77
-
78
- #else
79
- #define RUBY_MARK_ENTER(msg)
80
- #define RUBY_MARK_LEAVE(msg)
81
- #define RUBY_FREE_ENTER(msg)
82
- #define RUBY_FREE_LEAVE(msg)
83
- #define RUBY_GC_INFO if(0)printf
84
- #endif
85
-
86
- #define RUBY_FREE_UNLESS_NULL(ptr) if(ptr){ruby_xfree(ptr);(ptr)=NULL;}
87
-
88
- #if STACK_GROW_DIRECTION > 0
89
- # define STACK_UPPER(x, a, b) (a)
90
- #elif STACK_GROW_DIRECTION < 0
91
- # define STACK_UPPER(x, a, b) (b)
92
- #else
93
- RUBY_EXTERN int ruby_stack_grow_direction;
94
- int ruby_get_stack_grow_direction(volatile VALUE *addr);
95
- # define stack_growup_p(x) ( \
96
- (ruby_stack_grow_direction ? \
97
- ruby_stack_grow_direction : \
98
- ruby_get_stack_grow_direction(x)) > 0)
99
- # define STACK_UPPER(x, a, b) (stack_growup_p(x) ? (a) : (b))
100
- #endif
101
-
102
- /*
103
- STACK_GROW_DIR_DETECTION is used with STACK_DIR_UPPER.
104
-
105
- On most normal systems, stacks grow from high address to lower address. In
106
- this case, STACK_DIR_UPPER(a, b) will return (b), but on exotic systems where
107
- the stack grows UP (from low address to high address), it will return (a).
108
- */
109
-
110
- #if STACK_GROW_DIRECTION
111
- #define STACK_GROW_DIR_DETECTION
112
- #define STACK_DIR_UPPER(a,b) STACK_UPPER(0, (a), (b))
113
- #else
114
- #define STACK_GROW_DIR_DETECTION VALUE stack_grow_dir_detection
115
- #define STACK_DIR_UPPER(a,b) STACK_UPPER(&stack_grow_dir_detection, (a), (b))
116
- #endif
117
- #define IS_STACK_DIR_UPPER() STACK_DIR_UPPER(1,0)
118
-
119
- const char *rb_obj_info(VALUE obj);
120
- const char *rb_raw_obj_info(char *const buff, const size_t buff_size, VALUE obj);
121
-
122
- struct rb_execution_context_struct; /* in vm_core.h */
123
- struct rb_objspace; /* in vm_core.h */
124
-
125
- #define NEWOBJ_OF(var, T, c, f, s, ec) \
126
- T *(var) = (T *)(((f) & FL_WB_PROTECTED) ? \
127
- rb_wb_protected_newobj_of((ec ? ec : GET_EC()), (c), (f) & ~FL_WB_PROTECTED, s) : \
128
- rb_wb_unprotected_newobj_of((c), (f), s))
129
-
130
- #define RB_OBJ_GC_FLAGS_MAX 6 /* used in ext/objspace */
131
-
132
- #ifndef USE_UNALIGNED_MEMBER_ACCESS
133
- # define UNALIGNED_MEMBER_ACCESS(expr) (expr)
134
- #elif ! USE_UNALIGNED_MEMBER_ACCESS
135
- # define UNALIGNED_MEMBER_ACCESS(expr) (expr)
136
- #elif ! (__has_warning("-Waddress-of-packed-member") || GCC_VERSION_SINCE(9, 0, 0))
137
- # define UNALIGNED_MEMBER_ACCESS(expr) (expr)
138
- #else
139
- # include "internal/warnings.h"
140
- # define UNALIGNED_MEMBER_ACCESS(expr) __extension__({ \
141
- COMPILER_WARNING_PUSH; \
142
- COMPILER_WARNING_IGNORED(-Waddress-of-packed-member); \
143
- __typeof__(expr) unaligned_member_access_result = (expr); \
144
- COMPILER_WARNING_POP; \
145
- unaligned_member_access_result; \
146
- })
147
-
148
- # define UNALIGNED_MEMBER_PTR(ptr, mem) __extension__({ \
149
- COMPILER_WARNING_PUSH; \
150
- COMPILER_WARNING_IGNORED(-Waddress-of-packed-member); \
151
- const volatile void *unaligned_member_ptr_result = &(ptr)->mem; \
152
- COMPILER_WARNING_POP; \
153
- (__typeof__((ptr)->mem) *)unaligned_member_ptr_result; \
154
- })
155
- #endif
156
-
157
- #ifndef UNALIGNED_MEMBER_PTR
158
- # define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
159
- #endif
160
-
161
- #define RB_OBJ_WRITE_UNALIGNED(old, slot, young) do { \
162
- VALUE *_slot = UNALIGNED_MEMBER_ACCESS(slot); \
163
- RB_OBJ_WRITE(old, _slot, young); \
164
- } while (0)
165
-
166
- /* Used in places that could malloc during, which can cause the GC to run. We
167
- * need to temporarily disable the GC to allow the malloc to happen.
168
- * Allocating memory during GC is a bad idea, so use this only when absolutely
169
- * necessary. */
170
- #define DURING_GC_COULD_MALLOC_REGION_START() \
171
- assert(rb_during_gc()); \
172
- VALUE _already_disabled = rb_gc_disable_no_rest()
173
-
174
- #define DURING_GC_COULD_MALLOC_REGION_END() \
175
- if (_already_disabled == Qfalse) rb_gc_enable()
176
-
177
- /* gc.c */
178
- extern int ruby_disable_gc;
179
- RUBY_ATTR_MALLOC void *ruby_mimmalloc(size_t size);
180
- RUBY_ATTR_MALLOC void *ruby_mimcalloc(size_t num, size_t size);
181
- void ruby_mimfree(void *ptr);
182
- void rb_gc_prepare_heap(void);
183
- void rb_objspace_set_event_hook(const rb_event_flag_t event);
184
- VALUE rb_objspace_gc_enable(void *objspace);
185
- VALUE rb_objspace_gc_disable(void *objspace);
186
- void ruby_gc_set_params(void);
187
- void rb_gc_copy_attributes(VALUE dest, VALUE obj);
188
- size_t rb_size_mul_or_raise(size_t, size_t, VALUE); /* used in compile.c */
189
- size_t rb_size_mul_add_or_raise(size_t, size_t, size_t, VALUE); /* used in iseq.h */
190
- size_t rb_malloc_grow_capa(size_t current_capacity, size_t type_size);
191
- RUBY_ATTR_MALLOC void *rb_xmalloc_mul_add(size_t, size_t, size_t);
192
- RUBY_ATTR_MALLOC void *rb_xcalloc_mul_add(size_t, size_t, size_t);
193
- void *rb_xrealloc_mul_add(const void *, size_t, size_t, size_t);
194
- RUBY_ATTR_MALLOC void *rb_xmalloc_mul_add_mul(size_t, size_t, size_t, size_t);
195
- RUBY_ATTR_MALLOC void *rb_xcalloc_mul_add_mul(size_t, size_t, size_t, size_t);
196
- static inline void *ruby_sized_xrealloc_inlined(void *ptr, size_t new_size, size_t old_size) RUBY_ATTR_RETURNS_NONNULL RUBY_ATTR_ALLOC_SIZE((2));
197
- static inline void *ruby_sized_xrealloc2_inlined(void *ptr, size_t new_count, size_t elemsiz, size_t old_count) RUBY_ATTR_RETURNS_NONNULL RUBY_ATTR_ALLOC_SIZE((2, 3));
198
- static inline void ruby_sized_xfree_inlined(void *ptr, size_t size);
199
-
200
- void *rb_gc_ractor_cache_alloc(void);
201
- void rb_gc_ractor_cache_free(void *cache);
202
-
203
- bool rb_gc_size_allocatable_p(size_t size);
204
- size_t *rb_gc_heap_sizes(void);
205
- size_t rb_gc_heap_id_for_size(size_t size);
206
-
207
- void rb_gc_mark_and_move(VALUE *ptr);
208
-
209
- void rb_gc_mark_weak(VALUE *ptr);
210
- void rb_gc_remove_weak(VALUE parent_obj, VALUE *ptr);
211
-
212
- void rb_gc_ref_update_table_values_only(st_table *tbl);
213
-
214
- void rb_gc_initial_stress_set(VALUE flag);
215
-
216
- #define rb_gc_mark_and_move_ptr(ptr) do { \
217
- VALUE _obj = (VALUE)*(ptr); \
218
- rb_gc_mark_and_move(&_obj); \
219
- if (_obj != (VALUE)*(ptr)) *(ptr) = (void *)_obj; \
220
- } while (0)
221
-
222
- RUBY_SYMBOL_EXPORT_BEGIN
223
- /* exports for objspace module */
224
- void rb_objspace_reachable_objects_from(VALUE obj, void (func)(VALUE, void *), void *data);
225
- void rb_objspace_reachable_objects_from_root(void (func)(const char *category, VALUE, void *), void *data);
226
- int rb_objspace_internal_object_p(VALUE obj);
227
- int rb_objspace_garbage_object_p(VALUE obj);
228
-
229
- void rb_objspace_each_objects(
230
- int (*callback)(void *start, void *end, size_t stride, void *data),
231
- void *data);
232
-
233
- size_t rb_gc_obj_slot_size(VALUE obj);
234
-
235
- VALUE rb_gc_disable_no_rest(void);
236
-
237
-
238
- /* gc.c (export) */
239
- const char *rb_objspace_data_type_name(VALUE obj);
240
- VALUE rb_wb_protected_newobj_of(struct rb_execution_context_struct *, VALUE, VALUE, size_t);
241
- VALUE rb_wb_unprotected_newobj_of(VALUE, VALUE, size_t);
242
- size_t rb_obj_memsize_of(VALUE);
243
- size_t rb_obj_gc_flags(VALUE, ID[], size_t);
244
- void rb_gc_mark_values(long n, const VALUE *values);
245
- void rb_gc_mark_vm_stack_values(long n, const VALUE *values);
246
- void rb_gc_update_values(long n, VALUE *values);
247
- void *ruby_sized_xrealloc(void *ptr, size_t new_size, size_t old_size) RUBY_ATTR_RETURNS_NONNULL RUBY_ATTR_ALLOC_SIZE((2));
248
- void *ruby_sized_xrealloc2(void *ptr, size_t new_count, size_t element_size, size_t old_count) RUBY_ATTR_RETURNS_NONNULL RUBY_ATTR_ALLOC_SIZE((2, 3));
249
- void ruby_sized_xfree(void *x, size_t size);
250
-
251
- #if USE_SHARED_GC
252
- void ruby_load_external_gc_from_argv(int argc, char **argv);
253
- #endif
254
- RUBY_SYMBOL_EXPORT_END
255
-
256
- int rb_ec_stack_check(struct rb_execution_context_struct *ec);
257
- void rb_gc_writebarrier_remember(VALUE obj);
258
- const char *rb_obj_info(VALUE obj);
259
-
260
- #if defined(HAVE_MALLOC_USABLE_SIZE) || defined(HAVE_MALLOC_SIZE) || defined(_WIN32)
261
-
262
- static inline void *
263
- ruby_sized_xrealloc_inlined(void *ptr, size_t new_size, size_t old_size)
264
- {
265
- return ruby_xrealloc(ptr, new_size);
266
- }
267
-
268
- static inline void *
269
- ruby_sized_xrealloc2_inlined(void *ptr, size_t new_count, size_t elemsiz, size_t old_count)
270
- {
271
- return ruby_xrealloc2(ptr, new_count, elemsiz);
272
- }
273
-
274
- static inline void
275
- ruby_sized_xfree_inlined(void *ptr, size_t size)
276
- {
277
- ruby_xfree(ptr);
278
- }
279
-
280
- # define SIZED_REALLOC_N(x, y, z, w) REALLOC_N(x, y, z)
281
-
282
- static inline void *
283
- ruby_sized_realloc_n(void *ptr, size_t new_count, size_t element_size, size_t old_count)
284
- {
285
- return ruby_xrealloc2(ptr, new_count, element_size);
286
- }
287
-
288
- #else
289
-
290
- static inline void *
291
- ruby_sized_xrealloc_inlined(void *ptr, size_t new_size, size_t old_size)
292
- {
293
- return ruby_sized_xrealloc(ptr, new_size, old_size);
294
- }
295
-
296
- static inline void *
297
- ruby_sized_xrealloc2_inlined(void *ptr, size_t new_count, size_t elemsiz, size_t old_count)
298
- {
299
- return ruby_sized_xrealloc2(ptr, new_count, elemsiz, old_count);
300
- }
301
-
302
- static inline void
303
- ruby_sized_xfree_inlined(void *ptr, size_t size)
304
- {
305
- ruby_sized_xfree(ptr, size);
306
- }
307
-
308
- # define SIZED_REALLOC_N(v, T, m, n) \
309
- ((v) = (T *)ruby_sized_xrealloc2((void *)(v), (m), sizeof(T), (n)))
310
-
311
- static inline void *
312
- ruby_sized_realloc_n(void *ptr, size_t new_count, size_t element_size, size_t old_count)
313
- {
314
- return ruby_sized_xrealloc2(ptr, new_count, element_size, old_count);
315
- }
316
-
317
- #endif /* HAVE_MALLOC_USABLE_SIZE */
318
-
319
- #define ruby_sized_xrealloc ruby_sized_xrealloc_inlined
320
- #define ruby_sized_xrealloc2 ruby_sized_xrealloc2_inlined
321
- #define ruby_sized_xfree ruby_sized_xfree_inlined
322
- #endif /* INTERNAL_GC_H */