datadog-ruby_core_source 3.5.3 → 3.5.4

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 (243) hide show
  1. checksums.yaml +4 -4
  2. data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/thread_win32.h +36 -0
  3. data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/thread_win32.h +36 -0
  4. data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/thread_win32.h +36 -0
  5. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/constant.h +53 -0
  6. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/debug_counter.h +423 -0
  7. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm_sync.h +137 -0
  8. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/constant.h +53 -0
  9. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/debug_counter.h +423 -0
  10. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm_sync.h +137 -0
  11. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/constant.h +53 -0
  12. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/debug_counter.h +423 -0
  13. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/vm_sync.h +137 -0
  14. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/constant.h +53 -0
  15. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/debug_counter.h +425 -0
  16. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/vm_sync.h +160 -0
  17. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/constant.h +53 -0
  18. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/debug_counter.h +426 -0
  19. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/vm_sync.h +160 -0
  20. data/lib/datadog/ruby_core_source/version.rb +1 -1
  21. metadata +20 -224
  22. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/bignum.h +0 -244
  23. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/bits.h +0 -568
  24. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/cmdlineopt.h +0 -65
  25. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/compar.h +0 -29
  26. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/compile.h +0 -34
  27. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/complex.h +0 -29
  28. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/cont.h +0 -35
  29. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/dir.h +0 -16
  30. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/enc.h +0 -19
  31. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/encoding.h +0 -35
  32. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/enum.h +0 -18
  33. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/enumerator.h +0 -21
  34. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/error.h +0 -216
  35. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/eval.h +0 -32
  36. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/file.h +0 -38
  37. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/fixnum.h +0 -184
  38. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/hash.h +0 -191
  39. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/inits.h +0 -50
  40. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/io.h +0 -137
  41. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/load.h +0 -18
  42. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/loadpath.h +0 -16
  43. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/math.h +0 -23
  44. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/missing.h +0 -18
  45. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/numeric.h +0 -273
  46. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/object.h +0 -60
  47. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/parse.h +0 -108
  48. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/proc.h +0 -30
  49. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/process.h +0 -124
  50. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/ractor.h +0 -6
  51. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/random.h +0 -17
  52. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/range.h +0 -40
  53. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/rational.h +0 -71
  54. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/re.h +0 -28
  55. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/ruby_parser.h +0 -69
  56. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/sanitizers.h +0 -186
  57. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/signal.h +0 -25
  58. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/string.h +0 -159
  59. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/struct.h +0 -127
  60. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/symbol.h +0 -45
  61. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/thread.h +0 -78
  62. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/time.h +0 -34
  63. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/transcode.h +0 -23
  64. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/internal/util.h +0 -27
  65. data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/prism/extension.h +0 -18
  66. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/bignum.h +0 -244
  67. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/bits.h +0 -568
  68. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/cmdlineopt.h +0 -65
  69. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/compar.h +0 -29
  70. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/compile.h +0 -34
  71. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/complex.h +0 -29
  72. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/cont.h +0 -35
  73. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/dir.h +0 -16
  74. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/enc.h +0 -19
  75. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/encoding.h +0 -35
  76. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/enum.h +0 -18
  77. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/enumerator.h +0 -21
  78. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/error.h +0 -216
  79. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/eval.h +0 -33
  80. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/file.h +0 -38
  81. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/fixnum.h +0 -184
  82. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/hash.h +0 -191
  83. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/inits.h +0 -50
  84. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/io.h +0 -137
  85. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/load.h +0 -18
  86. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/loadpath.h +0 -16
  87. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/math.h +0 -23
  88. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/missing.h +0 -18
  89. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/numeric.h +0 -273
  90. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/object.h +0 -62
  91. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/parse.h +0 -108
  92. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/proc.h +0 -30
  93. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/process.h +0 -124
  94. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/ractor.h +0 -6
  95. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/random.h +0 -17
  96. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/range.h +0 -40
  97. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/rational.h +0 -71
  98. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/re.h +0 -28
  99. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/ruby_parser.h +0 -69
  100. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/sanitizers.h +0 -186
  101. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/signal.h +0 -25
  102. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/string.h +0 -160
  103. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/struct.h +0 -127
  104. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/symbol.h +0 -45
  105. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/thread.h +0 -78
  106. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/time.h +0 -34
  107. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/transcode.h +0 -23
  108. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/internal/util.h +0 -27
  109. data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/prism/extension.h +0 -18
  110. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/bignum.h +0 -244
  111. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/bits.h +0 -650
  112. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/cmdlineopt.h +0 -65
  113. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/compar.h +0 -29
  114. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/compile.h +0 -34
  115. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/complex.h +0 -29
  116. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/cont.h +0 -35
  117. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/dir.h +0 -16
  118. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/enc.h +0 -19
  119. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/encoding.h +0 -38
  120. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/enum.h +0 -18
  121. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/enumerator.h +0 -21
  122. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/error.h +0 -244
  123. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/eval.h +0 -33
  124. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/file.h +0 -38
  125. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/fixnum.h +0 -185
  126. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/hash.h +0 -192
  127. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/inits.h +0 -47
  128. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/io.h +0 -143
  129. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/load.h +0 -18
  130. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/loadpath.h +0 -16
  131. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/math.h +0 -23
  132. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/missing.h +0 -19
  133. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/numeric.h +0 -274
  134. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/object.h +0 -63
  135. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/parse.h +0 -130
  136. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/proc.h +0 -31
  137. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/process.h +0 -124
  138. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/ractor.h +0 -10
  139. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/random.h +0 -17
  140. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/range.h +0 -40
  141. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/rational.h +0 -71
  142. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/re.h +0 -28
  143. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/ruby_parser.h +0 -102
  144. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/signal.h +0 -24
  145. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/st.h +0 -11
  146. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/string.h +0 -198
  147. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/struct.h +0 -127
  148. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/symbol.h +0 -45
  149. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/thread.h +0 -108
  150. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/time.h +0 -34
  151. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/transcode.h +0 -23
  152. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/internal/util.h +0 -27
  153. data/lib/datadog/ruby_core_source/ruby-3.4.0-p0/prism/extension.h +0 -19
  154. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/bignum.h +0 -256
  155. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/bits.h +0 -647
  156. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/cmdlineopt.h +0 -64
  157. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/compar.h +0 -29
  158. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/compile.h +0 -34
  159. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/complex.h +0 -29
  160. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/concurrent_set.h +0 -21
  161. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/cont.h +0 -34
  162. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/dir.h +0 -16
  163. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/enc.h +0 -19
  164. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/encoding.h +0 -39
  165. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/enum.h +0 -18
  166. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/enumerator.h +0 -21
  167. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/error.h +0 -251
  168. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/eval.h +0 -43
  169. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/file.h +0 -38
  170. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/fixnum.h +0 -185
  171. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/hash.h +0 -194
  172. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/inits.h +0 -51
  173. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/io.h +0 -163
  174. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/load.h +0 -20
  175. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/loadpath.h +0 -16
  176. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/math.h +0 -23
  177. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/missing.h +0 -19
  178. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/numeric.h +0 -323
  179. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/object.h +0 -63
  180. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/parse.h +0 -131
  181. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/proc.h +0 -30
  182. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/process.h +0 -124
  183. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/ractor.h +0 -10
  184. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/random.h +0 -17
  185. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/range.h +0 -40
  186. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/rational.h +0 -71
  187. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/re.h +0 -33
  188. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/ruby_parser.h +0 -102
  189. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/signal.h +0 -25
  190. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/st.h +0 -11
  191. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/string.h +0 -203
  192. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/struct.h +0 -160
  193. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/symbol.h +0 -46
  194. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/thread.h +0 -112
  195. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/time.h +0 -34
  196. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/transcode.h +0 -23
  197. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/internal/util.h +0 -27
  198. data/lib/datadog/ruby_core_source/ruby-4.0.0-p0/prism/extension.h +0 -19
  199. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/bignum.h +0 -256
  200. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/bits.h +0 -647
  201. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/cmdlineopt.h +0 -64
  202. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/compar.h +0 -29
  203. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/compile.h +0 -34
  204. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/complex.h +0 -29
  205. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/concurrent_set.h +0 -21
  206. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/cont.h +0 -34
  207. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/dir.h +0 -16
  208. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/enc.h +0 -19
  209. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/encoding.h +0 -39
  210. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/enum.h +0 -18
  211. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/enumerator.h +0 -21
  212. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/error.h +0 -251
  213. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/eval.h +0 -43
  214. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/file.h +0 -38
  215. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/fixnum.h +0 -185
  216. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/hash.h +0 -194
  217. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/inits.h +0 -51
  218. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/io.h +0 -163
  219. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/load.h +0 -20
  220. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/loadpath.h +0 -16
  221. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/math.h +0 -23
  222. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/missing.h +0 -19
  223. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/numeric.h +0 -323
  224. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/object.h +0 -63
  225. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/parse.h +0 -131
  226. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/proc.h +0 -30
  227. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/process.h +0 -124
  228. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/ractor.h +0 -10
  229. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/random.h +0 -17
  230. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/range.h +0 -40
  231. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/rational.h +0 -73
  232. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/re.h +0 -33
  233. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/ruby_parser.h +0 -102
  234. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/signal.h +0 -25
  235. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/st.h +0 -11
  236. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/string.h +0 -203
  237. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/struct.h +0 -160
  238. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/symbol.h +0 -46
  239. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/thread.h +0 -112
  240. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/time.h +0 -34
  241. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/transcode.h +0 -23
  242. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/internal/util.h +0 -27
  243. data/lib/datadog/ruby_core_source/ruby-4.0.6-p0/prism/extension.h +0 -19
@@ -1,112 +0,0 @@
1
- #ifndef INTERNAL_THREAD_H /*-*-C-*-vi:se ft=c:*/
2
- #define INTERNAL_THREAD_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 Thread.
10
- */
11
- #include "ruby/ruby.h" /* for VALUE */
12
- #include "ruby/intern.h" /* for rb_blocking_function_t */
13
- #include "ccan/list/list.h" /* for list in rb_io_close_wait_list */
14
-
15
- struct rb_thread_struct; /* in vm_core.h */
16
- struct rb_io;
17
-
18
- #define RB_VM_SAVE_MACHINE_CONTEXT(th) \
19
- do { \
20
- FLUSH_REGISTER_WINDOWS; \
21
- setjmp((th)->ec->machine.regs); \
22
- SET_MACHINE_STACK_END(&(th)->ec->machine.stack_end); \
23
- } while (0)
24
-
25
- /* thread.c */
26
- #define COVERAGE_INDEX_LINES 0
27
- #define COVERAGE_INDEX_BRANCHES 1
28
- #define COVERAGE_TARGET_LINES 1
29
- #define COVERAGE_TARGET_BRANCHES 2
30
- #define COVERAGE_TARGET_METHODS 4
31
- #define COVERAGE_TARGET_ONESHOT_LINES 8
32
- #define COVERAGE_TARGET_EVAL 16
33
-
34
- #define RUBY_FATAL_THREAD_KILLED INT2FIX(0)
35
- #define RUBY_FATAL_THREAD_TERMINATED INT2FIX(1)
36
- #define RUBY_FATAL_FIBER_KILLED RB_INT2FIX(2)
37
-
38
- VALUE rb_obj_is_mutex(VALUE obj);
39
- VALUE rb_suppress_tracing(VALUE (*func)(VALUE), VALUE arg);
40
- void rb_thread_execute_interrupts(VALUE th);
41
- VALUE rb_get_coverages(void);
42
- int rb_get_coverage_mode(void);
43
- VALUE rb_default_coverage(int);
44
- VALUE rb_thread_shield_new(void);
45
- bool rb_thread_shield_owned(VALUE self);
46
- VALUE rb_thread_shield_wait(VALUE self);
47
- VALUE rb_thread_shield_release(VALUE self);
48
- VALUE rb_thread_shield_destroy(VALUE self);
49
- int rb_thread_to_be_killed(VALUE thread);
50
- void rb_thread_acquire_fork_lock(void);
51
- void rb_thread_release_fork_lock(void);
52
- void rb_thread_reset_fork_lock(void);
53
- void rb_mutex_allow_trap(VALUE self, int val);
54
- VALUE rb_uninterruptible(VALUE (*b_proc)(VALUE), VALUE data);
55
- VALUE rb_mutex_owned_p(VALUE self);
56
- VALUE rb_exec_recursive_outer_mid(VALUE (*f)(VALUE g, VALUE h, int r), VALUE g, VALUE h, ID mid);
57
- void ruby_mn_threads_params(void);
58
-
59
- int rb_thread_io_wait(struct rb_thread_struct *th, struct rb_io *io, int events, struct timeval * timeout);
60
- int rb_thread_wait_for_single_fd(struct rb_thread_struct *th, int fd, int events, struct timeval * timeout);
61
-
62
- size_t rb_thread_io_close_interrupt(struct rb_io *);
63
- void rb_thread_io_close_wait(struct rb_io *);
64
-
65
- void rb_ec_check_ints(struct rb_execution_context_struct *ec);
66
-
67
- void rb_thread_free_native_thread(void *th_ptr);
68
-
69
- RUBY_SYMBOL_EXPORT_BEGIN
70
-
71
- void *rb_thread_prevent_fork(void *(*func)(void *), void *data); /* for ext/socket/raddrinfo.c */
72
-
73
- /* Temporary. This API will be removed (renamed). */
74
- VALUE rb_thread_io_blocking_region(struct rb_io *io, rb_blocking_function_t *func, void *data1);
75
- VALUE rb_thread_io_blocking_call(struct rb_io *io, rb_blocking_function_t *func, void *data1, int events);
76
-
77
- // Invoke the given function, with the specified argument, in a way that `IO#close` from another execution context can interrupt it.
78
- VALUE rb_thread_io_blocking_operation(VALUE self, VALUE(*function)(VALUE), VALUE argument);
79
-
80
- /* thread.c (export) */
81
- int ruby_thread_has_gvl_p(void); /* for ext/fiddle/closure.c */
82
-
83
- RUBY_SYMBOL_EXPORT_END
84
-
85
- int rb_threadptr_execute_interrupts(struct rb_thread_struct *th, int blocking_timing);
86
- bool rb_thread_mn_schedulable(VALUE thread);
87
-
88
- bool rb_thread_resolve_unblock_function(rb_unblock_function_t **unblock_function, void **data2, struct rb_thread_struct *thread);
89
-
90
- // interrupt exec
91
-
92
- typedef VALUE (rb_interrupt_exec_func_t)(void *data);
93
-
94
- enum rb_interrupt_exec_flag {
95
- rb_interrupt_exec_flag_none = 0x00,
96
- rb_interrupt_exec_flag_value_data = 0x01,
97
- rb_interrupt_exec_flag_new_thread = 0x02,
98
- };
99
-
100
- // interrupt the target_th and run func.
101
- struct rb_ractor_struct;
102
-
103
- void rb_threadptr_interrupt_exec(struct rb_thread_struct *target_th,
104
- rb_interrupt_exec_func_t *func, void *data, enum rb_interrupt_exec_flag flags);
105
-
106
- // create a thread in the target_r and run func on the created thread.
107
- void rb_ractor_interrupt_exec(struct rb_ractor_struct *target_r,
108
- rb_interrupt_exec_func_t *func, void *data, enum rb_interrupt_exec_flag flags);
109
-
110
- void rb_threadptr_interrupt_exec_task_mark(struct rb_thread_struct *th);
111
-
112
- #endif /* INTERNAL_THREAD_H */
@@ -1,34 +0,0 @@
1
- #ifndef INTERNAL_TIME_H /*-*-C-*-vi:se ft=c:*/
2
- #define INTERNAL_TIME_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 Time.
10
- */
11
- #include "ruby/internal/config.h" /* for SIGNEDNESS_OF_TIME_T */
12
- #include "internal/bits.h" /* for SIGNED_INTEGER_MAX */
13
- #include "ruby/ruby.h" /* for VALUE */
14
-
15
- #if SIGNEDNESS_OF_TIME_T < 0 /* signed */
16
- # define TIMET_MAX SIGNED_INTEGER_MAX(time_t)
17
- # define TIMET_MIN SIGNED_INTEGER_MIN(time_t)
18
- #elif SIGNEDNESS_OF_TIME_T > 0 /* unsigned */
19
- # define TIMET_MAX UNSIGNED_INTEGER_MAX(time_t)
20
- # define TIMET_MIN ((time_t)0)
21
- #endif
22
-
23
- struct timeval; /* <- in <sys/time.h> or <winsock2.h> */
24
-
25
- /* time.c */
26
- struct timeval rb_time_timeval(VALUE);
27
-
28
- RUBY_SYMBOL_EXPORT_BEGIN
29
- /* time.c (export) */
30
- RUBY_SYMBOL_EXPORT_END
31
-
32
- void ruby_reset_timezone(const char *);
33
-
34
- #endif /* INTERNAL_TIME_H */
@@ -1,23 +0,0 @@
1
- #ifndef INTERNAL_TRANSCODE_H /*-*-C-*-vi:se ft=c:*/
2
- #define INTERNAL_TRANSCODE_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 Encoding::Converter.
10
- */
11
- #include "ruby/internal/config.h"
12
- #include <stddef.h> /* for size_t */
13
- #include "ruby/ruby.h" /* for VALUE */
14
- #include "ruby/encoding.h" /* for rb_econv_t */
15
-
16
- /* transcode.c */
17
- extern VALUE rb_cEncodingConverter;
18
- size_t rb_econv_memsize(rb_econv_t *);
19
-
20
- /* vm.c */
21
- void rb_free_transcoder_table(void);
22
-
23
- #endif /* INTERNAL_TRANSCODE_H */
@@ -1,27 +0,0 @@
1
- #ifndef INTERNAL_UTIL_H /*-*-C-*-vi:se ft=c:*/
2
- #define INTERNAL_UTIL_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 corresponding util.c.
10
- * @warning DO NOT ADD RANDOM GARBAGE HERE THIS FILE IS FOR util.c
11
- */
12
- #include "ruby/internal/config.h"
13
- #include <stddef.h> /* for size_t */
14
-
15
- #ifdef HAVE_SYS_TYPES_H
16
- # include <sys/types.h> /* for ssize_t (note: on Windows ssize_t is */
17
- #endif /* `#define`d in ruby/config.h) */
18
-
19
- /* util.c */
20
- char *ruby_dtoa(double d_, int mode, int ndigits, int *decpt, int *sign, char **rve);
21
- char *ruby_hdtoa(double d, const char *xdigs, int ndigits, int *decpt, int *sign, char **rve);
22
-
23
- RUBY_SYMBOL_EXPORT_BEGIN
24
- /* util.c (export) */
25
- RUBY_SYMBOL_EXPORT_END
26
-
27
- #endif /* INTERNAL_UTIL_H */
@@ -1,19 +0,0 @@
1
- #ifndef PRISM_EXT_NODE_H
2
- #define PRISM_EXT_NODE_H
3
-
4
- #define EXPECTED_PRISM_VERSION "1.7.0"
5
-
6
- #include <ruby.h>
7
- #include <ruby/encoding.h>
8
- #include "prism.h"
9
-
10
- VALUE pm_source_new(const pm_parser_t *parser, rb_encoding *encoding, bool freeze);
11
- VALUE pm_token_new(const pm_parser_t *parser, const pm_token_t *token, rb_encoding *encoding, VALUE source, bool freeze);
12
- VALUE pm_ast_new(const pm_parser_t *parser, const pm_node_t *node, rb_encoding *encoding, VALUE source, bool freeze);
13
- VALUE pm_integer_new(const pm_integer_t *integer);
14
-
15
- void Init_prism_api_node(void);
16
- void Init_prism_pack(void);
17
- RUBY_FUNC_EXPORTED void Init_prism(void);
18
-
19
- #endif
@@ -1,256 +0,0 @@
1
- #ifndef INTERNAL_BIGNUM_H /*-*-C-*-vi:se ft=c:*/
2
- #define INTERNAL_BIGNUM_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 Bignums.
10
- */
11
- #include "ruby/internal/config.h" /* for HAVE_LIBGMP */
12
- #include "internal/compilers.h" /* for FLEX_ARY_LEN */
13
- #include <stddef.h> /* for size_t */
14
-
15
- #ifdef HAVE_SYS_TYPES_H
16
- # include <sys/types.h> /* for ssize_t (note: on Windows ssize_t is */
17
- #endif /* `#define`d in ruby/config.h) */
18
-
19
- #include "ruby/internal/stdbool.h" /* for bool */
20
- #include "ruby/ruby.h" /* for struct RBasic */
21
-
22
- #ifndef BDIGIT
23
- # if SIZEOF_INT*2 <= SIZEOF_LONG_LONG
24
- # define BDIGIT unsigned int
25
- # define SIZEOF_BDIGIT SIZEOF_INT
26
- # define BDIGIT_DBL unsigned LONG_LONG
27
- # define BDIGIT_DBL_SIGNED LONG_LONG
28
- # define PRI_BDIGIT_PREFIX ""
29
- # define PRI_BDIGIT_DBL_PREFIX PRI_LL_PREFIX
30
- # elif SIZEOF_INT*2 <= SIZEOF_LONG
31
- # define BDIGIT unsigned int
32
- # define SIZEOF_BDIGIT SIZEOF_INT
33
- # define BDIGIT_DBL unsigned long
34
- # define BDIGIT_DBL_SIGNED long
35
- # define PRI_BDIGIT_PREFIX ""
36
- # define PRI_BDIGIT_DBL_PREFIX "l"
37
- # elif SIZEOF_SHORT*2 <= SIZEOF_LONG
38
- # define BDIGIT unsigned short
39
- # define SIZEOF_BDIGIT SIZEOF_SHORT
40
- # define BDIGIT_DBL unsigned long
41
- # define BDIGIT_DBL_SIGNED long
42
- # define PRI_BDIGIT_PREFIX "h"
43
- # define PRI_BDIGIT_DBL_PREFIX "l"
44
- # else
45
- # define BDIGIT unsigned short
46
- # define SIZEOF_BDIGIT (SIZEOF_LONG/2)
47
- # define SIZEOF_ACTUAL_BDIGIT SIZEOF_LONG
48
- # define BDIGIT_DBL unsigned long
49
- # define BDIGIT_DBL_SIGNED long
50
- # define PRI_BDIGIT_PREFIX "h"
51
- # define PRI_BDIGIT_DBL_PREFIX "l"
52
- # endif
53
- #endif
54
-
55
- #ifndef SIZEOF_ACTUAL_BDIGIT
56
- # define SIZEOF_ACTUAL_BDIGIT SIZEOF_BDIGIT
57
- #endif
58
-
59
- #ifdef PRI_BDIGIT_PREFIX
60
- # define PRIdBDIGIT PRI_BDIGIT_PREFIX"d"
61
- # define PRIiBDIGIT PRI_BDIGIT_PREFIX"i"
62
- # define PRIoBDIGIT PRI_BDIGIT_PREFIX"o"
63
- # define PRIuBDIGIT PRI_BDIGIT_PREFIX"u"
64
- # define PRIxBDIGIT PRI_BDIGIT_PREFIX"x"
65
- # define PRIXBDIGIT PRI_BDIGIT_PREFIX"X"
66
- #endif
67
-
68
- #ifdef PRI_BDIGIT_DBL_PREFIX
69
- # define PRIdBDIGIT_DBL PRI_BDIGIT_DBL_PREFIX"d"
70
- # define PRIiBDIGIT_DBL PRI_BDIGIT_DBL_PREFIX"i"
71
- # define PRIoBDIGIT_DBL PRI_BDIGIT_DBL_PREFIX"o"
72
- # define PRIuBDIGIT_DBL PRI_BDIGIT_DBL_PREFIX"u"
73
- # define PRIxBDIGIT_DBL PRI_BDIGIT_DBL_PREFIX"x"
74
- # define PRIXBDIGIT_DBL PRI_BDIGIT_DBL_PREFIX"X"
75
- #endif
76
-
77
- #define RBIGNUM(obj) ((struct RBignum *)(obj))
78
- #define BIGNUM_SIGN_BIT FL_USER1
79
- #define BIGNUM_EMBED_FLAG ((VALUE)FL_USER2)
80
-
81
- /* This is likely more bits than we need today and will also need adjustment if
82
- * we change GC slot sizes.
83
- */
84
- #define BIGNUM_EMBED_LEN_NUMBITS 9
85
- #define BIGNUM_EMBED_LEN_MASK \
86
- (RUBY_FL_USER11 | RUBY_FL_USER10 | RUBY_FL_USER9 | RUBY_FL_USER8 | RUBY_FL_USER7 | \
87
- RUBY_FL_USER6 | RUBY_FL_USER5 | RUBY_FL_USER4 | RUBY_FL_USER3)
88
- #define BIGNUM_EMBED_LEN_SHIFT \
89
- (FL_USHIFT+3) /* bit offset of BIGNUM_EMBED_LEN_MASK */
90
- #define BIGNUM_EMBED_LEN_MAX (BIGNUM_EMBED_LEN_MASK >> BIGNUM_EMBED_LEN_SHIFT)
91
-
92
- enum rb_int_parse_flags {
93
- RB_INT_PARSE_SIGN = 0x01,
94
- RB_INT_PARSE_UNDERSCORE = 0x02,
95
- RB_INT_PARSE_PREFIX = 0x04,
96
- RB_INT_PARSE_ALL = 0x07,
97
- RB_INT_PARSE_DEFAULT = 0x07,
98
- };
99
-
100
- struct RBignum {
101
- struct RBasic basic;
102
- union {
103
- struct {
104
- size_t len;
105
- BDIGIT *digits;
106
- } heap;
107
- /* This is a length 1 array because:
108
- * 1. GCC has a bug that does not optimize C flexible array members
109
- * (https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102452)
110
- * 2. Zero length arrays are not supported by all compilers
111
- */
112
- BDIGIT ary[1];
113
- } as;
114
- };
115
-
116
- /* bignum.c */
117
- extern const char ruby_digitmap[];
118
- double rb_big_fdiv_double(VALUE x, VALUE y);
119
- VALUE rb_big_uminus(VALUE x);
120
- VALUE rb_big_hash(VALUE);
121
- VALUE rb_big_odd_p(VALUE);
122
- VALUE rb_big_even_p(VALUE);
123
- size_t rb_big_size(VALUE);
124
- VALUE rb_integer_float_cmp(VALUE x, VALUE y);
125
- VALUE rb_integer_float_eq(VALUE x, VALUE y);
126
- VALUE rb_str_convert_to_inum(VALUE str, int base, int badcheck, int raise_exception);
127
- VALUE rb_big_comp(VALUE x);
128
- VALUE rb_big_aref(VALUE x, VALUE y);
129
- VALUE rb_big_aref2(VALUE num, VALUE beg, VALUE len);
130
- VALUE rb_big_abs(VALUE x);
131
- VALUE rb_big_size_m(VALUE big);
132
- VALUE rb_big_bit_length(VALUE big);
133
- VALUE rb_big_remainder(VALUE x, VALUE y);
134
- VALUE rb_big_gt(VALUE x, VALUE y);
135
- VALUE rb_big_ge(VALUE x, VALUE y);
136
- VALUE rb_big_lt(VALUE x, VALUE y);
137
- VALUE rb_big_le(VALUE x, VALUE y);
138
- VALUE rb_int_powm(int const argc, VALUE * const argv, VALUE const num);
139
- VALUE rb_big_isqrt(VALUE n);
140
- static inline bool BIGNUM_SIGN(VALUE b);
141
- static inline bool BIGNUM_POSITIVE_P(VALUE b);
142
- static inline bool BIGNUM_NEGATIVE_P(VALUE b);
143
- static inline void BIGNUM_SET_SIGN(VALUE b, bool sign);
144
- static inline void BIGNUM_NEGATE(VALUE b);
145
- static inline size_t BIGNUM_LEN(VALUE b);
146
- static inline BDIGIT *BIGNUM_DIGITS(VALUE b);
147
- static inline int BIGNUM_LENINT(VALUE b);
148
- static inline bool BIGNUM_EMBED_P(VALUE b);
149
-
150
- RUBY_SYMBOL_EXPORT_BEGIN
151
- /* bignum.c (export) */
152
- VALUE rb_big_mul_normal(VALUE x, VALUE y);
153
- VALUE rb_big_mul_balance(VALUE x, VALUE y);
154
- VALUE rb_big_mul_karatsuba(VALUE x, VALUE y);
155
- VALUE rb_big_mul_toom3(VALUE x, VALUE y);
156
- VALUE rb_big_sq_fast(VALUE x);
157
- VALUE rb_big_divrem_normal(VALUE x, VALUE y);
158
- VALUE rb_big2str_poweroftwo(VALUE x, int base);
159
- VALUE rb_big2str_generic(VALUE x, int base);
160
- VALUE rb_str2big_poweroftwo(VALUE arg, int base, int badcheck);
161
- VALUE rb_str2big_normal(VALUE arg, int base, int badcheck);
162
- VALUE rb_str2big_karatsuba(VALUE arg, int base, int badcheck);
163
- #if defined(HAVE_LIBGMP) && defined(HAVE_GMP_H)
164
- VALUE rb_big_mul_gmp(VALUE x, VALUE y);
165
- VALUE rb_big_divrem_gmp(VALUE x, VALUE y);
166
- VALUE rb_big2str_gmp(VALUE x, int base);
167
- VALUE rb_str2big_gmp(VALUE arg, int base, int badcheck);
168
- #endif
169
- VALUE rb_int_parse_cstr(const char *str, ssize_t len, char **endp, size_t *ndigits, int base, int flags);
170
- RUBY_SYMBOL_EXPORT_END
171
-
172
- #if HAVE_LONG_LONG
173
- VALUE rb_ull2big(unsigned LONG_LONG n);
174
- VALUE rb_ll2big(LONG_LONG n);
175
- #endif
176
-
177
- #if defined(HAVE_INT128_T)
178
- VALUE rb_uint128t2big(uint128_t n);
179
- VALUE rb_int128t2big(int128_t n);
180
- #endif
181
-
182
- /* sign: positive:1, negative:0 */
183
- static inline bool
184
- BIGNUM_SIGN(VALUE b)
185
- {
186
- return FL_TEST_RAW(b, BIGNUM_SIGN_BIT);
187
- }
188
-
189
- static inline bool
190
- BIGNUM_POSITIVE_P(VALUE b)
191
- {
192
- return BIGNUM_SIGN(b);
193
- }
194
-
195
- static inline bool
196
- BIGNUM_NEGATIVE_P(VALUE b)
197
- {
198
- return ! BIGNUM_POSITIVE_P(b);
199
- }
200
-
201
- static inline void
202
- BIGNUM_SET_SIGN(VALUE b, bool sign)
203
- {
204
- if (sign) {
205
- FL_SET_RAW(b, BIGNUM_SIGN_BIT);
206
- }
207
- else {
208
- FL_UNSET_RAW(b, BIGNUM_SIGN_BIT);
209
- }
210
- }
211
-
212
- static inline void
213
- BIGNUM_NEGATE(VALUE b)
214
- {
215
- FL_REVERSE_RAW(b, BIGNUM_SIGN_BIT);
216
- }
217
-
218
- static inline size_t
219
- BIGNUM_LEN(VALUE b)
220
- {
221
- if (! BIGNUM_EMBED_P(b)) {
222
- return RBIGNUM(b)->as.heap.len;
223
- }
224
- else {
225
- size_t ret = RBASIC(b)->flags;
226
- ret &= BIGNUM_EMBED_LEN_MASK;
227
- ret >>= BIGNUM_EMBED_LEN_SHIFT;
228
- return ret;
229
- }
230
- }
231
-
232
- static inline int
233
- BIGNUM_LENINT(VALUE b)
234
- {
235
- return rb_long2int(BIGNUM_LEN(b));
236
- }
237
-
238
- /* LSB:BIGNUM_DIGITS(b)[0], MSB:BIGNUM_DIGITS(b)[BIGNUM_LEN(b)-1] */
239
- static inline BDIGIT *
240
- BIGNUM_DIGITS(VALUE b)
241
- {
242
- if (BIGNUM_EMBED_P(b)) {
243
- return RBIGNUM(b)->as.ary;
244
- }
245
- else {
246
- return RBIGNUM(b)->as.heap.digits;
247
- }
248
- }
249
-
250
- static inline bool
251
- BIGNUM_EMBED_P(VALUE b)
252
- {
253
- return FL_TEST_RAW(b, BIGNUM_EMBED_FLAG);
254
- }
255
-
256
- #endif /* INTERNAL_BIGNUM_H */