wasmtime 20.0.2 → 21.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2089) hide show
  1. checksums.yaml +4 -4
  2. data/Cargo.lock +129 -124
  3. data/ext/Cargo.toml +8 -6
  4. data/ext/cargo-vendor/cobs-0.2.3/.cargo-checksum.json +1 -0
  5. data/ext/cargo-vendor/cobs-0.2.3/Cargo.toml +39 -0
  6. data/ext/cargo-vendor/cobs-0.2.3/LICENSE-APACHE +202 -0
  7. data/ext/cargo-vendor/cobs-0.2.3/LICENSE-MIT +19 -0
  8. data/ext/cargo-vendor/cobs-0.2.3/README.md +23 -0
  9. data/ext/cargo-vendor/cobs-0.2.3/src/dec.rs +360 -0
  10. data/ext/cargo-vendor/cobs-0.2.3/src/enc.rs +216 -0
  11. data/ext/cargo-vendor/cobs-0.2.3/src/lib.rs +14 -0
  12. data/ext/cargo-vendor/cobs-0.2.3/tests/test.rs +265 -0
  13. data/ext/cargo-vendor/cranelift-bforest-0.108.1/.cargo-checksum.json +1 -0
  14. data/ext/cargo-vendor/cranelift-bforest-0.108.1/Cargo.toml +40 -0
  15. data/ext/cargo-vendor/cranelift-codegen-0.108.1/.cargo-checksum.json +1 -0
  16. data/ext/cargo-vendor/cranelift-codegen-0.108.1/Cargo.toml +189 -0
  17. data/ext/cargo-vendor/cranelift-codegen-0.108.1/build.rs +266 -0
  18. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/alias_analysis.rs +403 -0
  19. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/context.rs +395 -0
  20. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/ctxhash.rs +167 -0
  21. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/egraph/elaborate.rs +835 -0
  22. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/egraph.rs +839 -0
  23. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/incremental_cache.rs +256 -0
  24. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/ir/instructions.rs +1020 -0
  25. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/aarch64/abi.rs +1580 -0
  26. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/aarch64/inst/args.rs +721 -0
  27. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/aarch64/inst/emit.rs +3846 -0
  28. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/aarch64/inst/emit_tests.rs +7902 -0
  29. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/aarch64/inst/imms.rs +1213 -0
  30. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/aarch64/inst/mod.rs +3094 -0
  31. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/aarch64/inst/regs.rs +288 -0
  32. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/aarch64/inst.isle +4225 -0
  33. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/aarch64/lower/isle.rs +810 -0
  34. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/aarch64/pcc.rs +568 -0
  35. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/mod.rs +449 -0
  36. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/riscv64/abi.rs +1051 -0
  37. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/riscv64/inst/args.rs +1938 -0
  38. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/riscv64/inst/emit.rs +2681 -0
  39. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/riscv64/inst/emit_tests.rs +2197 -0
  40. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/riscv64/inst/mod.rs +1975 -0
  41. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/riscv64/inst/regs.rs +168 -0
  42. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/riscv64/inst/vector.rs +1144 -0
  43. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/riscv64/inst.isle +2969 -0
  44. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/riscv64/lower/isle.rs +625 -0
  45. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/riscv64/lower.isle +2883 -0
  46. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/s390x/abi.rs +1037 -0
  47. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/s390x/inst/args.rs +314 -0
  48. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/s390x/inst/emit.rs +3646 -0
  49. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/s390x/inst/imms.rs +202 -0
  50. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/s390x/inst/mod.rs +3421 -0
  51. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/s390x/inst/regs.rs +180 -0
  52. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/x64/abi.rs +1410 -0
  53. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/x64/inst/args.rs +2256 -0
  54. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/x64/inst/emit.rs +4311 -0
  55. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/x64/inst/emit_tests.rs +5171 -0
  56. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/x64/inst/mod.rs +2838 -0
  57. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/x64/inst/regs.rs +276 -0
  58. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/x64/inst.isle +5294 -0
  59. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/x64/lower/isle.rs +1064 -0
  60. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/x64/lower.isle +4808 -0
  61. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/x64/lower.rs +337 -0
  62. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/x64/pcc.rs +1014 -0
  63. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/lib.rs +106 -0
  64. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/machinst/abi.rs +2506 -0
  65. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/machinst/blockorder.rs +465 -0
  66. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/machinst/isle.rs +903 -0
  67. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/machinst/lower.rs +1432 -0
  68. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/machinst/mod.rs +555 -0
  69. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/machinst/reg.rs +522 -0
  70. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/machinst/valueregs.rs +138 -0
  71. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/machinst/vcode.rs +1741 -0
  72. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/nan_canonicalization.rs +130 -0
  73. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/opts/arithmetic.isle +240 -0
  74. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/opts/icmp.isle +215 -0
  75. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/ranges.rs +131 -0
  76. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/remove_constant_phis.rs +419 -0
  77. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/scoped_hash_map.rs +310 -0
  78. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/settings.rs +590 -0
  79. data/ext/cargo-vendor/cranelift-codegen-meta-0.108.1/.cargo-checksum.json +1 -0
  80. data/ext/cargo-vendor/cranelift-codegen-meta-0.108.1/Cargo.toml +35 -0
  81. data/ext/cargo-vendor/cranelift-codegen-meta-0.108.1/src/gen_inst.rs +1278 -0
  82. data/ext/cargo-vendor/cranelift-codegen-meta-0.108.1/src/gen_isle.rs +519 -0
  83. data/ext/cargo-vendor/cranelift-codegen-meta-0.108.1/src/gen_settings.rs +508 -0
  84. data/ext/cargo-vendor/cranelift-codegen-meta-0.108.1/src/gen_types.rs +75 -0
  85. data/ext/cargo-vendor/cranelift-codegen-meta-0.108.1/src/isa/riscv64.rs +168 -0
  86. data/ext/cargo-vendor/cranelift-codegen-meta-0.108.1/src/isa/x86.rs +414 -0
  87. data/ext/cargo-vendor/cranelift-codegen-meta-0.108.1/src/isle.rs +126 -0
  88. data/ext/cargo-vendor/cranelift-codegen-meta-0.108.1/src/lib.rs +98 -0
  89. data/ext/cargo-vendor/cranelift-codegen-meta-0.108.1/src/shared/settings.rs +348 -0
  90. data/ext/cargo-vendor/cranelift-codegen-meta-0.108.1/src/srcgen.rs +464 -0
  91. data/ext/cargo-vendor/cranelift-codegen-shared-0.108.1/.cargo-checksum.json +1 -0
  92. data/ext/cargo-vendor/cranelift-codegen-shared-0.108.1/Cargo.toml +22 -0
  93. data/ext/cargo-vendor/cranelift-control-0.108.1/.cargo-checksum.json +1 -0
  94. data/ext/cargo-vendor/cranelift-control-0.108.1/Cargo.toml +30 -0
  95. data/ext/cargo-vendor/cranelift-entity-0.108.1/.cargo-checksum.json +1 -0
  96. data/ext/cargo-vendor/cranelift-entity-0.108.1/Cargo.toml +52 -0
  97. data/ext/cargo-vendor/cranelift-entity-0.108.1/src/lib.rs +381 -0
  98. data/ext/cargo-vendor/cranelift-frontend-0.108.1/.cargo-checksum.json +1 -0
  99. data/ext/cargo-vendor/cranelift-frontend-0.108.1/Cargo.toml +67 -0
  100. data/ext/cargo-vendor/cranelift-frontend-0.108.1/src/switch.rs +696 -0
  101. data/ext/cargo-vendor/cranelift-isle-0.108.1/.cargo-checksum.json +1 -0
  102. data/ext/cargo-vendor/cranelift-isle-0.108.1/Cargo.toml +46 -0
  103. data/ext/cargo-vendor/cranelift-isle-0.108.1/src/codegen.rs +886 -0
  104. data/ext/cargo-vendor/cranelift-isle-0.108.1/src/disjointsets.rs +169 -0
  105. data/ext/cargo-vendor/cranelift-isle-0.108.1/src/lib.rs +33 -0
  106. data/ext/cargo-vendor/cranelift-isle-0.108.1/src/sema.rs +2492 -0
  107. data/ext/cargo-vendor/cranelift-isle-0.108.1/src/serialize.rs +846 -0
  108. data/ext/cargo-vendor/cranelift-isle-0.108.1/src/stablemapset.rs +79 -0
  109. data/ext/cargo-vendor/cranelift-isle-0.108.1/src/trie_again.rs +684 -0
  110. data/ext/cargo-vendor/cranelift-native-0.108.1/.cargo-checksum.json +1 -0
  111. data/ext/cargo-vendor/cranelift-native-0.108.1/Cargo.toml +43 -0
  112. data/ext/cargo-vendor/cranelift-wasm-0.108.1/.cargo-checksum.json +1 -0
  113. data/ext/cargo-vendor/cranelift-wasm-0.108.1/Cargo.toml +109 -0
  114. data/ext/cargo-vendor/cranelift-wasm-0.108.1/src/code_translator.rs +3687 -0
  115. data/ext/cargo-vendor/cranelift-wasm-0.108.1/src/environ/dummy.rs +906 -0
  116. data/ext/cargo-vendor/cranelift-wasm-0.108.1/src/environ/spec.rs +945 -0
  117. data/ext/cargo-vendor/cranelift-wasm-0.108.1/src/sections_translator.rs +389 -0
  118. data/ext/cargo-vendor/deterministic-wasi-ctx-0.1.22/.cargo-checksum.json +1 -0
  119. data/ext/cargo-vendor/deterministic-wasi-ctx-0.1.22/Cargo.toml +48 -0
  120. data/ext/cargo-vendor/embedded-io-0.4.0/.cargo-checksum.json +1 -0
  121. data/ext/cargo-vendor/embedded-io-0.4.0/CHANGELOG.md +28 -0
  122. data/ext/cargo-vendor/embedded-io-0.4.0/Cargo.toml +73 -0
  123. data/ext/cargo-vendor/embedded-io-0.4.0/LICENSE-APACHE +201 -0
  124. data/ext/cargo-vendor/embedded-io-0.4.0/LICENSE-MIT +25 -0
  125. data/ext/cargo-vendor/embedded-io-0.4.0/README.md +33 -0
  126. data/ext/cargo-vendor/embedded-io-0.4.0/ci.sh +21 -0
  127. data/ext/cargo-vendor/embedded-io-0.4.0/rust-toolchain.toml +3 -0
  128. data/ext/cargo-vendor/embedded-io-0.4.0/src/adapters/futures_io.rs +65 -0
  129. data/ext/cargo-vendor/embedded-io-0.4.0/src/adapters/mod.rs +40 -0
  130. data/ext/cargo-vendor/embedded-io-0.4.0/src/adapters/std_io.rs +107 -0
  131. data/ext/cargo-vendor/embedded-io-0.4.0/src/adapters/tokio.rs +108 -0
  132. data/ext/cargo-vendor/embedded-io-0.4.0/src/asynch.rs +230 -0
  133. data/ext/cargo-vendor/embedded-io-0.4.0/src/blocking.rs +309 -0
  134. data/ext/cargo-vendor/embedded-io-0.4.0/src/fmt.rs +228 -0
  135. data/ext/cargo-vendor/embedded-io-0.4.0/src/lib.rs +125 -0
  136. data/ext/cargo-vendor/libm-0.2.8/.cargo-checksum.json +1 -0
  137. data/ext/cargo-vendor/libm-0.2.8/CHANGELOG.md +123 -0
  138. data/ext/cargo-vendor/libm-0.2.8/CONTRIBUTING.md +95 -0
  139. data/ext/cargo-vendor/libm-0.2.8/Cargo.toml +45 -0
  140. data/ext/cargo-vendor/libm-0.2.8/LICENSE-APACHE +201 -0
  141. data/ext/cargo-vendor/libm-0.2.8/LICENSE-MIT +25 -0
  142. data/ext/cargo-vendor/libm-0.2.8/README.md +51 -0
  143. data/ext/cargo-vendor/libm-0.2.8/build.rs +463 -0
  144. data/ext/cargo-vendor/libm-0.2.8/src/lib.rs +59 -0
  145. data/ext/cargo-vendor/libm-0.2.8/src/libm_helper.rs +171 -0
  146. data/ext/cargo-vendor/libm-0.2.8/src/math/acos.rs +112 -0
  147. data/ext/cargo-vendor/libm-0.2.8/src/math/acosf.rs +79 -0
  148. data/ext/cargo-vendor/libm-0.2.8/src/math/acosh.rs +27 -0
  149. data/ext/cargo-vendor/libm-0.2.8/src/math/acoshf.rs +26 -0
  150. data/ext/cargo-vendor/libm-0.2.8/src/math/asin.rs +119 -0
  151. data/ext/cargo-vendor/libm-0.2.8/src/math/asinf.rs +72 -0
  152. data/ext/cargo-vendor/libm-0.2.8/src/math/asinh.rs +40 -0
  153. data/ext/cargo-vendor/libm-0.2.8/src/math/asinhf.rs +39 -0
  154. data/ext/cargo-vendor/libm-0.2.8/src/math/atan.rs +184 -0
  155. data/ext/cargo-vendor/libm-0.2.8/src/math/atan2.rs +126 -0
  156. data/ext/cargo-vendor/libm-0.2.8/src/math/atan2f.rs +91 -0
  157. data/ext/cargo-vendor/libm-0.2.8/src/math/atanf.rs +112 -0
  158. data/ext/cargo-vendor/libm-0.2.8/src/math/atanh.rs +37 -0
  159. data/ext/cargo-vendor/libm-0.2.8/src/math/atanhf.rs +37 -0
  160. data/ext/cargo-vendor/libm-0.2.8/src/math/cbrt.rs +113 -0
  161. data/ext/cargo-vendor/libm-0.2.8/src/math/cbrtf.rs +75 -0
  162. data/ext/cargo-vendor/libm-0.2.8/src/math/ceil.rs +82 -0
  163. data/ext/cargo-vendor/libm-0.2.8/src/math/ceilf.rs +65 -0
  164. data/ext/cargo-vendor/libm-0.2.8/src/math/copysign.rs +12 -0
  165. data/ext/cargo-vendor/libm-0.2.8/src/math/copysignf.rs +12 -0
  166. data/ext/cargo-vendor/libm-0.2.8/src/math/cos.rs +73 -0
  167. data/ext/cargo-vendor/libm-0.2.8/src/math/cosf.rs +83 -0
  168. data/ext/cargo-vendor/libm-0.2.8/src/math/cosh.rs +38 -0
  169. data/ext/cargo-vendor/libm-0.2.8/src/math/coshf.rs +38 -0
  170. data/ext/cargo-vendor/libm-0.2.8/src/math/erf.rs +318 -0
  171. data/ext/cargo-vendor/libm-0.2.8/src/math/erff.rs +230 -0
  172. data/ext/cargo-vendor/libm-0.2.8/src/math/exp.rs +154 -0
  173. data/ext/cargo-vendor/libm-0.2.8/src/math/exp10.rs +22 -0
  174. data/ext/cargo-vendor/libm-0.2.8/src/math/exp10f.rs +22 -0
  175. data/ext/cargo-vendor/libm-0.2.8/src/math/exp2.rs +394 -0
  176. data/ext/cargo-vendor/libm-0.2.8/src/math/exp2f.rs +135 -0
  177. data/ext/cargo-vendor/libm-0.2.8/src/math/expf.rs +101 -0
  178. data/ext/cargo-vendor/libm-0.2.8/src/math/expm1.rs +144 -0
  179. data/ext/cargo-vendor/libm-0.2.8/src/math/expm1f.rs +134 -0
  180. data/ext/cargo-vendor/libm-0.2.8/src/math/expo2.rs +14 -0
  181. data/ext/cargo-vendor/libm-0.2.8/src/math/fabs.rs +41 -0
  182. data/ext/cargo-vendor/libm-0.2.8/src/math/fabsf.rs +41 -0
  183. data/ext/cargo-vendor/libm-0.2.8/src/math/fdim.rs +22 -0
  184. data/ext/cargo-vendor/libm-0.2.8/src/math/fdimf.rs +22 -0
  185. data/ext/cargo-vendor/libm-0.2.8/src/math/fenv.rs +27 -0
  186. data/ext/cargo-vendor/libm-0.2.8/src/math/floor.rs +81 -0
  187. data/ext/cargo-vendor/libm-0.2.8/src/math/floorf.rs +66 -0
  188. data/ext/cargo-vendor/libm-0.2.8/src/math/fma.rs +232 -0
  189. data/ext/cargo-vendor/libm-0.2.8/src/math/fmaf.rs +117 -0
  190. data/ext/cargo-vendor/libm-0.2.8/src/math/fmax.rs +12 -0
  191. data/ext/cargo-vendor/libm-0.2.8/src/math/fmaxf.rs +12 -0
  192. data/ext/cargo-vendor/libm-0.2.8/src/math/fmin.rs +12 -0
  193. data/ext/cargo-vendor/libm-0.2.8/src/math/fminf.rs +12 -0
  194. data/ext/cargo-vendor/libm-0.2.8/src/math/fmod.rs +80 -0
  195. data/ext/cargo-vendor/libm-0.2.8/src/math/fmodf.rs +89 -0
  196. data/ext/cargo-vendor/libm-0.2.8/src/math/frexp.rs +20 -0
  197. data/ext/cargo-vendor/libm-0.2.8/src/math/frexpf.rs +21 -0
  198. data/ext/cargo-vendor/libm-0.2.8/src/math/hypot.rs +74 -0
  199. data/ext/cargo-vendor/libm-0.2.8/src/math/hypotf.rs +43 -0
  200. data/ext/cargo-vendor/libm-0.2.8/src/math/ilogb.rs +32 -0
  201. data/ext/cargo-vendor/libm-0.2.8/src/math/ilogbf.rs +32 -0
  202. data/ext/cargo-vendor/libm-0.2.8/src/math/j0.rs +422 -0
  203. data/ext/cargo-vendor/libm-0.2.8/src/math/j0f.rs +359 -0
  204. data/ext/cargo-vendor/libm-0.2.8/src/math/j1.rs +414 -0
  205. data/ext/cargo-vendor/libm-0.2.8/src/math/j1f.rs +380 -0
  206. data/ext/cargo-vendor/libm-0.2.8/src/math/jn.rs +343 -0
  207. data/ext/cargo-vendor/libm-0.2.8/src/math/jnf.rs +259 -0
  208. data/ext/cargo-vendor/libm-0.2.8/src/math/k_cos.rs +62 -0
  209. data/ext/cargo-vendor/libm-0.2.8/src/math/k_cosf.rs +29 -0
  210. data/ext/cargo-vendor/libm-0.2.8/src/math/k_expo2.rs +14 -0
  211. data/ext/cargo-vendor/libm-0.2.8/src/math/k_expo2f.rs +14 -0
  212. data/ext/cargo-vendor/libm-0.2.8/src/math/k_sin.rs +57 -0
  213. data/ext/cargo-vendor/libm-0.2.8/src/math/k_sinf.rs +30 -0
  214. data/ext/cargo-vendor/libm-0.2.8/src/math/k_tan.rs +105 -0
  215. data/ext/cargo-vendor/libm-0.2.8/src/math/k_tanf.rs +46 -0
  216. data/ext/cargo-vendor/libm-0.2.8/src/math/ldexp.rs +4 -0
  217. data/ext/cargo-vendor/libm-0.2.8/src/math/ldexpf.rs +4 -0
  218. data/ext/cargo-vendor/libm-0.2.8/src/math/lgamma.rs +6 -0
  219. data/ext/cargo-vendor/libm-0.2.8/src/math/lgamma_r.rs +320 -0
  220. data/ext/cargo-vendor/libm-0.2.8/src/math/lgammaf.rs +6 -0
  221. data/ext/cargo-vendor/libm-0.2.8/src/math/lgammaf_r.rs +255 -0
  222. data/ext/cargo-vendor/libm-0.2.8/src/math/log.rs +117 -0
  223. data/ext/cargo-vendor/libm-0.2.8/src/math/log10.rs +117 -0
  224. data/ext/cargo-vendor/libm-0.2.8/src/math/log10f.rs +91 -0
  225. data/ext/cargo-vendor/libm-0.2.8/src/math/log1p.rs +143 -0
  226. data/ext/cargo-vendor/libm-0.2.8/src/math/log1pf.rs +98 -0
  227. data/ext/cargo-vendor/libm-0.2.8/src/math/log2.rs +106 -0
  228. data/ext/cargo-vendor/libm-0.2.8/src/math/log2f.rs +87 -0
  229. data/ext/cargo-vendor/libm-0.2.8/src/math/logf.rs +65 -0
  230. data/ext/cargo-vendor/libm-0.2.8/src/math/mod.rs +370 -0
  231. data/ext/cargo-vendor/libm-0.2.8/src/math/modf.rs +34 -0
  232. data/ext/cargo-vendor/libm-0.2.8/src/math/modff.rs +33 -0
  233. data/ext/cargo-vendor/libm-0.2.8/src/math/nextafter.rs +37 -0
  234. data/ext/cargo-vendor/libm-0.2.8/src/math/nextafterf.rs +37 -0
  235. data/ext/cargo-vendor/libm-0.2.8/src/math/pow.rs +637 -0
  236. data/ext/cargo-vendor/libm-0.2.8/src/math/powf.rs +342 -0
  237. data/ext/cargo-vendor/libm-0.2.8/src/math/rem_pio2.rs +233 -0
  238. data/ext/cargo-vendor/libm-0.2.8/src/math/rem_pio2_large.rs +470 -0
  239. data/ext/cargo-vendor/libm-0.2.8/src/math/rem_pio2f.rs +67 -0
  240. data/ext/cargo-vendor/libm-0.2.8/src/math/remainder.rs +5 -0
  241. data/ext/cargo-vendor/libm-0.2.8/src/math/remainderf.rs +5 -0
  242. data/ext/cargo-vendor/libm-0.2.8/src/math/remquo.rs +110 -0
  243. data/ext/cargo-vendor/libm-0.2.8/src/math/remquof.rs +97 -0
  244. data/ext/cargo-vendor/libm-0.2.8/src/math/rint.rs +58 -0
  245. data/ext/cargo-vendor/libm-0.2.8/src/math/rintf.rs +58 -0
  246. data/ext/cargo-vendor/libm-0.2.8/src/math/round.rs +28 -0
  247. data/ext/cargo-vendor/libm-0.2.8/src/math/roundf.rs +30 -0
  248. data/ext/cargo-vendor/libm-0.2.8/src/math/scalbn.rs +33 -0
  249. data/ext/cargo-vendor/libm-0.2.8/src/math/scalbnf.rs +29 -0
  250. data/ext/cargo-vendor/libm-0.2.8/src/math/sin.rs +88 -0
  251. data/ext/cargo-vendor/libm-0.2.8/src/math/sincos.rs +134 -0
  252. data/ext/cargo-vendor/libm-0.2.8/src/math/sincosf.rs +185 -0
  253. data/ext/cargo-vendor/libm-0.2.8/src/math/sinf.rs +93 -0
  254. data/ext/cargo-vendor/libm-0.2.8/src/math/sinh.rs +49 -0
  255. data/ext/cargo-vendor/libm-0.2.8/src/math/sinhf.rs +30 -0
  256. data/ext/cargo-vendor/libm-0.2.8/src/math/sqrt.rs +280 -0
  257. data/ext/cargo-vendor/libm-0.2.8/src/math/sqrtf.rs +170 -0
  258. data/ext/cargo-vendor/libm-0.2.8/src/math/tan.rs +70 -0
  259. data/ext/cargo-vendor/libm-0.2.8/src/math/tanf.rs +78 -0
  260. data/ext/cargo-vendor/libm-0.2.8/src/math/tanh.rs +53 -0
  261. data/ext/cargo-vendor/libm-0.2.8/src/math/tanhf.rs +39 -0
  262. data/ext/cargo-vendor/libm-0.2.8/src/math/tgamma.rs +208 -0
  263. data/ext/cargo-vendor/libm-0.2.8/src/math/tgammaf.rs +6 -0
  264. data/ext/cargo-vendor/libm-0.2.8/src/math/trunc.rs +40 -0
  265. data/ext/cargo-vendor/libm-0.2.8/src/math/truncf.rs +42 -0
  266. data/ext/cargo-vendor/postcard-1.0.8/.cargo-checksum.json +1 -0
  267. data/ext/cargo-vendor/postcard-1.0.8/CHANGELOG.md +141 -0
  268. data/ext/cargo-vendor/postcard-1.0.8/Cargo.toml +100 -0
  269. data/ext/cargo-vendor/postcard-1.0.8/LICENSE-APACHE +201 -0
  270. data/ext/cargo-vendor/postcard-1.0.8/LICENSE-MIT +25 -0
  271. data/ext/cargo-vendor/postcard-1.0.8/README.md +146 -0
  272. data/ext/cargo-vendor/postcard-1.0.8/spec/LICENSE-CC-BY-SA +427 -0
  273. data/ext/cargo-vendor/postcard-1.0.8/spec/book.toml +6 -0
  274. data/ext/cargo-vendor/postcard-1.0.8/spec/src/SUMMARY.md +6 -0
  275. data/ext/cargo-vendor/postcard-1.0.8/spec/src/glossary.md +17 -0
  276. data/ext/cargo-vendor/postcard-1.0.8/spec/src/intro.md +12 -0
  277. data/ext/cargo-vendor/postcard-1.0.8/spec/src/serde-data-model.md +190 -0
  278. data/ext/cargo-vendor/postcard-1.0.8/spec/src/wire-format.md +327 -0
  279. data/ext/cargo-vendor/postcard-1.0.8/src/accumulator.rs +367 -0
  280. data/ext/cargo-vendor/postcard-1.0.8/src/de/deserializer.rs +599 -0
  281. data/ext/cargo-vendor/postcard-1.0.8/src/de/flavors.rs +468 -0
  282. data/ext/cargo-vendor/postcard-1.0.8/src/de/mod.rs +568 -0
  283. data/ext/cargo-vendor/postcard-1.0.8/src/error.rs +95 -0
  284. data/ext/cargo-vendor/postcard-1.0.8/src/fixint.rs +189 -0
  285. data/ext/cargo-vendor/postcard-1.0.8/src/lib.rs +143 -0
  286. data/ext/cargo-vendor/postcard-1.0.8/src/max_size.rs +233 -0
  287. data/ext/cargo-vendor/postcard-1.0.8/src/schema.rs +282 -0
  288. data/ext/cargo-vendor/postcard-1.0.8/src/ser/flavors.rs +722 -0
  289. data/ext/cargo-vendor/postcard-1.0.8/src/ser/mod.rs +866 -0
  290. data/ext/cargo-vendor/postcard-1.0.8/src/ser/serializer.rs +564 -0
  291. data/ext/cargo-vendor/postcard-1.0.8/src/varint.rs +103 -0
  292. data/ext/cargo-vendor/postcard-1.0.8/tests/accumulator.rs +57 -0
  293. data/ext/cargo-vendor/postcard-1.0.8/tests/crc.rs +60 -0
  294. data/ext/cargo-vendor/postcard-1.0.8/tests/loopback.rs +248 -0
  295. data/ext/cargo-vendor/postcard-1.0.8/tests/max_size.rs +101 -0
  296. data/ext/cargo-vendor/postcard-1.0.8/tests/schema.rs +107 -0
  297. data/ext/cargo-vendor/rb-sys-0.9.100/.cargo-checksum.json +1 -0
  298. data/ext/cargo-vendor/rb-sys-0.9.100/Cargo.toml +58 -0
  299. data/ext/cargo-vendor/rb-sys-0.9.100/build/main.rs +267 -0
  300. data/ext/cargo-vendor/rb-sys-0.9.100/build/stable_api_config.rs +139 -0
  301. data/ext/cargo-vendor/rb-sys-0.9.100/src/bindings.rs +21 -0
  302. data/ext/cargo-vendor/rb-sys-0.9.100/src/tracking_allocator.rs +266 -0
  303. data/ext/cargo-vendor/rb-sys-build-0.9.100/.cargo-checksum.json +1 -0
  304. data/ext/cargo-vendor/rb-sys-build-0.9.100/Cargo.toml +62 -0
  305. data/ext/cargo-vendor/rb-sys-build-0.9.100/src/bindings/stable_api.rs +203 -0
  306. data/ext/cargo-vendor/rb-sys-build-0.9.100/src/bindings.rs +254 -0
  307. data/ext/cargo-vendor/rb-sys-build-0.9.100/src/cc.rs +374 -0
  308. data/ext/cargo-vendor/rb-sys-build-0.9.100/src/utils.rs +52 -0
  309. data/ext/cargo-vendor/wasi-common-21.0.1/.cargo-checksum.json +1 -0
  310. data/ext/cargo-vendor/wasi-common-21.0.1/Cargo.toml +223 -0
  311. data/ext/cargo-vendor/wasi-common-21.0.1/tests/all/async_.rs +293 -0
  312. data/ext/cargo-vendor/wasi-common-21.0.1/tests/all/main.rs +21 -0
  313. data/ext/cargo-vendor/wasi-common-21.0.1/tests/all/sync.rs +279 -0
  314. data/ext/cargo-vendor/wasm-encoder-0.207.0/.cargo-checksum.json +1 -0
  315. data/ext/cargo-vendor/wasm-encoder-0.207.0/Cargo.toml +45 -0
  316. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/core/code.rs +3502 -0
  317. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/core/data.rs +186 -0
  318. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/core/elements.rs +221 -0
  319. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/core/globals.rs +112 -0
  320. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/core/imports.rs +157 -0
  321. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/core/memories.rs +128 -0
  322. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/core/tables.rs +134 -0
  323. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/core/types.rs +678 -0
  324. data/ext/cargo-vendor/wasmparser-0.207.0/.cargo-checksum.json +1 -0
  325. data/ext/cargo-vendor/wasmparser-0.207.0/Cargo.lock +659 -0
  326. data/ext/cargo-vendor/wasmparser-0.207.0/Cargo.toml +95 -0
  327. data/ext/cargo-vendor/wasmparser-0.207.0/src/binary_reader.rs +1867 -0
  328. data/ext/cargo-vendor/wasmparser-0.207.0/src/lib.rs +805 -0
  329. data/ext/cargo-vendor/wasmparser-0.207.0/src/limits.rs +78 -0
  330. data/ext/cargo-vendor/wasmparser-0.207.0/src/map.rs +137 -0
  331. data/ext/cargo-vendor/wasmparser-0.207.0/src/parser.rs +1636 -0
  332. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/component/canonicals.rs +121 -0
  333. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/component/instances.rs +164 -0
  334. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/component/names.rs +102 -0
  335. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/component/start.rs +31 -0
  336. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/component/types.rs +551 -0
  337. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/code.rs +146 -0
  338. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/coredumps.rs +244 -0
  339. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/custom.rs +64 -0
  340. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/data.rs +96 -0
  341. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/dylink0.rs +110 -0
  342. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/elements.rs +152 -0
  343. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/globals.rs +51 -0
  344. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/linking.rs +450 -0
  345. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/memories.rs +57 -0
  346. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/names.rs +159 -0
  347. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/operators.rs +430 -0
  348. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/reloc.rs +301 -0
  349. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/tables.rs +93 -0
  350. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/types/matches.rs +277 -0
  351. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/types.rs +1773 -0
  352. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core.rs +43 -0
  353. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers.rs +316 -0
  354. data/ext/cargo-vendor/wasmparser-0.207.0/src/resources.rs +235 -0
  355. data/ext/cargo-vendor/wasmparser-0.207.0/src/validator/component.rs +3242 -0
  356. data/ext/cargo-vendor/wasmparser-0.207.0/src/validator/core/canonical.rs +233 -0
  357. data/ext/cargo-vendor/wasmparser-0.207.0/src/validator/core.rs +1450 -0
  358. data/ext/cargo-vendor/wasmparser-0.207.0/src/validator/func.rs +331 -0
  359. data/ext/cargo-vendor/wasmparser-0.207.0/src/validator/names.rs +947 -0
  360. data/ext/cargo-vendor/wasmparser-0.207.0/src/validator/operators.rs +4117 -0
  361. data/ext/cargo-vendor/wasmparser-0.207.0/src/validator/types.rs +4492 -0
  362. data/ext/cargo-vendor/wasmparser-0.207.0/src/validator.rs +1786 -0
  363. data/ext/cargo-vendor/wasmprinter-0.207.0/.cargo-checksum.json +1 -0
  364. data/ext/cargo-vendor/wasmprinter-0.207.0/Cargo.toml +50 -0
  365. data/ext/cargo-vendor/wasmprinter-0.207.0/src/lib.rs +3226 -0
  366. data/ext/cargo-vendor/wasmprinter-0.207.0/src/operator.rs +1164 -0
  367. data/ext/cargo-vendor/wasmprinter-0.207.0/tests/all.rs +293 -0
  368. data/ext/cargo-vendor/wasmtime-21.0.1/.cargo-checksum.json +1 -0
  369. data/ext/cargo-vendor/wasmtime-21.0.1/Cargo.toml +386 -0
  370. data/ext/cargo-vendor/wasmtime-21.0.1/build.rs +37 -0
  371. data/ext/cargo-vendor/wasmtime-21.0.1/src/compile/code_builder.rs +275 -0
  372. data/ext/cargo-vendor/wasmtime-21.0.1/src/compile/runtime.rs +176 -0
  373. data/ext/cargo-vendor/wasmtime-21.0.1/src/compile.rs +910 -0
  374. data/ext/cargo-vendor/wasmtime-21.0.1/src/config.rs +2904 -0
  375. data/ext/cargo-vendor/wasmtime-21.0.1/src/engine/serialization.rs +887 -0
  376. data/ext/cargo-vendor/wasmtime-21.0.1/src/engine.rs +728 -0
  377. data/ext/cargo-vendor/wasmtime-21.0.1/src/lib.rs +328 -0
  378. data/ext/cargo-vendor/wasmtime-21.0.1/src/profiling_agent/jitdump.rs +67 -0
  379. data/ext/cargo-vendor/wasmtime-21.0.1/src/profiling_agent/perfmap.rs +48 -0
  380. data/ext/cargo-vendor/wasmtime-21.0.1/src/profiling_agent/vtune.rs +81 -0
  381. data/ext/cargo-vendor/wasmtime-21.0.1/src/profiling_agent.rs +106 -0
  382. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/code.rs +102 -0
  383. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/code_memory.rs +337 -0
  384. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/component.rs +661 -0
  385. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/func/host.rs +440 -0
  386. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/func/options.rs +555 -0
  387. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/func/typed.rs +2498 -0
  388. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/func.rs +746 -0
  389. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/instance.rs +814 -0
  390. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/linker.rs +783 -0
  391. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/matching.rs +217 -0
  392. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/mod.rs +783 -0
  393. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/resource_table.rs +355 -0
  394. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/resources.rs +1133 -0
  395. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/storage.rs +43 -0
  396. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/store.rs +29 -0
  397. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/types.rs +892 -0
  398. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/values.rs +980 -0
  399. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/coredump.rs +342 -0
  400. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/debug.rs +166 -0
  401. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/externals/global.rs +310 -0
  402. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/externals/table.rs +477 -0
  403. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/externals.rs +236 -0
  404. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/func/typed.rs +899 -0
  405. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/func.rs +2627 -0
  406. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/gc/disabled/anyref.rs +46 -0
  407. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/gc/disabled/externref.rs +50 -0
  408. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/gc/disabled/rooting.rs +224 -0
  409. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/gc/enabled/anyref.rs +473 -0
  410. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/gc/enabled/externref.rs +650 -0
  411. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/gc/enabled/i31.rs +346 -0
  412. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/gc/enabled/rooting.rs +1588 -0
  413. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/gc.rs +89 -0
  414. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/instance.rs +992 -0
  415. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/instantiate.rs +346 -0
  416. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/limits.rs +399 -0
  417. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/linker.rs +1506 -0
  418. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/memory.rs +998 -0
  419. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/module/registry.rs +353 -0
  420. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/module.rs +1295 -0
  421. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/profiling.rs +221 -0
  422. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/resources.rs +33 -0
  423. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/signatures.rs +216 -0
  424. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/stack.rs +73 -0
  425. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/store/context.rs +243 -0
  426. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/store/data.rs +301 -0
  427. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/store/func_refs.rs +90 -0
  428. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/store.rs +2820 -0
  429. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/trampoline/func.rs +139 -0
  430. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/trampoline/global.rs +68 -0
  431. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/trampoline/memory.rs +287 -0
  432. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/trampoline/table.rs +29 -0
  433. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/trampoline.rs +78 -0
  434. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/trap.rs +642 -0
  435. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/type_registry.rs +807 -0
  436. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/types/matching.rs +421 -0
  437. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/types.rs +2239 -0
  438. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/unix.rs +40 -0
  439. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/v128.rs +131 -0
  440. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/values.rs +966 -0
  441. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/arch/aarch64.rs +76 -0
  442. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/arch/x86_64.rs +41 -0
  443. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/async_yield.rs +35 -0
  444. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/component/libcalls.rs +571 -0
  445. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/component/resources.rs +352 -0
  446. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/component.rs +860 -0
  447. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/const_expr.rs +102 -0
  448. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/cow.rs +893 -0
  449. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/debug_builtins.rs +59 -0
  450. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/export.rs +108 -0
  451. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/gc/disabled.rs +24 -0
  452. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/gc/enabled/drc.rs +968 -0
  453. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/gc/enabled/externref.rs +116 -0
  454. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/gc/enabled/free_list.rs +771 -0
  455. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/gc/enabled.rs +18 -0
  456. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/gc/gc_ref.rs +491 -0
  457. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/gc/gc_runtime.rs +506 -0
  458. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/gc/host_data.rs +82 -0
  459. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/gc/i31.rs +87 -0
  460. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/gc.rs +245 -0
  461. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/imports.rs +29 -0
  462. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/instance/allocator/on_demand.rs +218 -0
  463. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/instance/allocator/pooling/gc_heap_pool.rs +93 -0
  464. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/instance/allocator/pooling/generic_stack_pool.rs +66 -0
  465. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/instance/allocator/pooling/index_allocator.rs +705 -0
  466. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/instance/allocator/pooling/memory_pool.rs +1000 -0
  467. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/instance/allocator/pooling/table_pool.rs +233 -0
  468. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/instance/allocator/pooling/unix_stack_pool.rs +245 -0
  469. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/instance/allocator/pooling.rs +656 -0
  470. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/instance/allocator.rs +798 -0
  471. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/instance.rs +1519 -0
  472. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/libcalls.rs +834 -0
  473. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/memory.rs +744 -0
  474. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/mmap.rs +220 -0
  475. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/mmap_vec.rs +162 -0
  476. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/module_id.rs +43 -0
  477. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/mpk/enabled.rs +214 -0
  478. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/mpk/mod.rs +54 -0
  479. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/mpk/pkru.rs +104 -0
  480. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/mpk/sys.rs +114 -0
  481. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/send_sync_ptr.rs +106 -0
  482. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/store_box.rs +37 -0
  483. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/custom/capi.rs +200 -0
  484. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/custom/mmap.rs +112 -0
  485. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/custom/mod.rs +34 -0
  486. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/custom/traphandlers.rs +55 -0
  487. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/custom/vm.rs +109 -0
  488. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/miri/mmap.rs +95 -0
  489. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/miri/mod.rs +24 -0
  490. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/miri/traphandlers.rs +47 -0
  491. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/mod.rs +25 -0
  492. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/unix/machports.rs +416 -0
  493. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/unix/mmap.rs +162 -0
  494. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/unix/mod.rs +35 -0
  495. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/unix/signals.rs +401 -0
  496. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/unix/unwind.rs +150 -0
  497. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/unix/vm.rs +215 -0
  498. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/windows/mmap.rs +221 -0
  499. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/windows/mod.rs +20 -0
  500. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/windows/traphandlers.rs +104 -0
  501. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/table.rs +847 -0
  502. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/threads/parking_spot.rs +623 -0
  503. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/threads/shared_memory.rs +233 -0
  504. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/threads/shared_memory_disabled.rs +101 -0
  505. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/traphandlers/backtrace.rs +267 -0
  506. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/traphandlers/coredump_disabled.rs +16 -0
  507. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/traphandlers/coredump_enabled.rs +42 -0
  508. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/traphandlers.rs +768 -0
  509. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/vmcontext/vm_host_func_context.rs +138 -0
  510. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/vmcontext.rs +1337 -0
  511. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm.rs +287 -0
  512. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/windows.rs +35 -0
  513. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime.rs +110 -0
  514. data/ext/cargo-vendor/wasmtime-21.0.1/src/sync_nostd.rs +255 -0
  515. data/ext/cargo-vendor/wasmtime-21.0.1/src/sync_std.rs +52 -0
  516. data/ext/cargo-vendor/wasmtime-asm-macros-21.0.1/.cargo-checksum.json +1 -0
  517. data/ext/cargo-vendor/wasmtime-asm-macros-21.0.1/Cargo.toml +22 -0
  518. data/ext/cargo-vendor/wasmtime-asm-macros-21.0.1/src/lib.rs +83 -0
  519. data/ext/cargo-vendor/wasmtime-cache-21.0.1/.cargo-checksum.json +1 -0
  520. data/ext/cargo-vendor/wasmtime-cache-21.0.1/Cargo.toml +88 -0
  521. data/ext/cargo-vendor/wasmtime-cache-21.0.1/src/lib.rs +235 -0
  522. data/ext/cargo-vendor/wasmtime-component-macro-21.0.1/.cargo-checksum.json +1 -0
  523. data/ext/cargo-vendor/wasmtime-component-macro-21.0.1/Cargo.toml +79 -0
  524. data/ext/cargo-vendor/wasmtime-component-macro-21.0.1/src/bindgen.rs +436 -0
  525. data/ext/cargo-vendor/wasmtime-component-macro-21.0.1/src/component.rs +1295 -0
  526. data/ext/cargo-vendor/wasmtime-component-macro-21.0.1/tests/codegen.rs +576 -0
  527. data/ext/cargo-vendor/wasmtime-component-macro-21.0.1/tests/codegen_no_std.rs +16 -0
  528. data/ext/cargo-vendor/wasmtime-component-util-21.0.1/.cargo-checksum.json +1 -0
  529. data/ext/cargo-vendor/wasmtime-component-util-21.0.1/Cargo.toml +25 -0
  530. data/ext/cargo-vendor/wasmtime-component-util-21.0.1/src/lib.rs +182 -0
  531. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/.cargo-checksum.json +1 -0
  532. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/Cargo.toml +114 -0
  533. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/compiler/component.rs +968 -0
  534. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/compiler.rs +1383 -0
  535. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/debug/gc.rs +252 -0
  536. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/debug/transform/attr.rs +320 -0
  537. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/debug/transform/expression.rs +1248 -0
  538. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/debug/transform/line_program.rs +287 -0
  539. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/debug/transform/mod.rs +256 -0
  540. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/debug/transform/unit.rs +529 -0
  541. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/debug/transform/utils.rs +186 -0
  542. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/debug/write_debuginfo.rs +196 -0
  543. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/debug.rs +18 -0
  544. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/func_environ.rs +2888 -0
  545. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/gc/enabled.rs +648 -0
  546. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/gc.rs +198 -0
  547. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/lib.rs +511 -0
  548. data/ext/cargo-vendor/wasmtime-environ-21.0.1/.cargo-checksum.json +1 -0
  549. data/ext/cargo-vendor/wasmtime-environ-21.0.1/Cargo.lock +772 -0
  550. data/ext/cargo-vendor/wasmtime-environ-21.0.1/Cargo.toml +154 -0
  551. data/ext/cargo-vendor/wasmtime-environ-21.0.1/examples/factc.rs +198 -0
  552. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/compile/address_map.rs +73 -0
  553. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/compile/mod.rs +419 -0
  554. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/compile/module_artifacts.rs +315 -0
  555. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/compile/module_environ.rs +1337 -0
  556. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/compile/module_types.rs +362 -0
  557. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/compile/trap_encoding.rs +70 -0
  558. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/component/compiler.rs +20 -0
  559. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/component/dfg.rs +691 -0
  560. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/component/info.rs +672 -0
  561. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/component/translate/adapt.rs +455 -0
  562. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/component/translate.rs +978 -0
  563. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/component/types.rs +1029 -0
  564. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/component/types_builder/resources.rs +233 -0
  565. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/component/types_builder.rs +997 -0
  566. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/component.rs +107 -0
  567. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/demangling.rs +28 -0
  568. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/fact/core_types.rs +25 -0
  569. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/fact/signature.rs +119 -0
  570. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/fact/trampoline.rs +3234 -0
  571. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/fact/transcode.rs +90 -0
  572. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/fact/traps.rs +116 -0
  573. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/fact.rs +714 -0
  574. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/lib.rs +161 -0
  575. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/module.rs +697 -0
  576. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/module_artifacts.rs +146 -0
  577. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/module_types.rs +91 -0
  578. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/scopevec.rs +80 -0
  579. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/stack_map.rs +37 -0
  580. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/trap_encoding.rs +189 -0
  581. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/tunables.rs +168 -0
  582. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/vmoffsets.rs +1015 -0
  583. data/ext/cargo-vendor/wasmtime-fiber-21.0.1/.cargo-checksum.json +1 -0
  584. data/ext/cargo-vendor/wasmtime-fiber-21.0.1/Cargo.toml +64 -0
  585. data/ext/cargo-vendor/wasmtime-fiber-21.0.1/build.rs +38 -0
  586. data/ext/cargo-vendor/wasmtime-fiber-21.0.1/src/lib.rs +328 -0
  587. data/ext/cargo-vendor/wasmtime-fiber-21.0.1/src/unix.rs +490 -0
  588. data/ext/cargo-vendor/wasmtime-fiber-21.0.1/src/windows.rs +166 -0
  589. data/ext/cargo-vendor/wasmtime-jit-debug-21.0.1/.cargo-checksum.json +1 -0
  590. data/ext/cargo-vendor/wasmtime-jit-debug-21.0.1/Cargo.toml +67 -0
  591. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-21.0.1/.cargo-checksum.json +1 -0
  592. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-21.0.1/Cargo.toml +51 -0
  593. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-21.0.1/src/lib.rs +109 -0
  594. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-21.0.1/src/libc.rs +163 -0
  595. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-21.0.1/src/miri.rs +10 -0
  596. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-21.0.1/src/win.rs +49 -0
  597. data/ext/cargo-vendor/wasmtime-slab-21.0.1/.cargo-checksum.json +1 -0
  598. data/ext/cargo-vendor/wasmtime-slab-21.0.1/Cargo.toml +21 -0
  599. data/ext/cargo-vendor/wasmtime-slab-21.0.1/src/lib.rs +498 -0
  600. data/ext/cargo-vendor/wasmtime-types-21.0.1/.cargo-checksum.json +1 -0
  601. data/ext/cargo-vendor/wasmtime-types-21.0.1/Cargo.toml +55 -0
  602. data/ext/cargo-vendor/wasmtime-types-21.0.1/src/error.rs +81 -0
  603. data/ext/cargo-vendor/wasmtime-types-21.0.1/src/lib.rs +1572 -0
  604. data/ext/cargo-vendor/wasmtime-versioned-export-macros-21.0.1/.cargo-checksum.json +1 -0
  605. data/ext/cargo-vendor/wasmtime-versioned-export-macros-21.0.1/Cargo.toml +32 -0
  606. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/.cargo-checksum.json +1 -0
  607. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/Cargo.toml +200 -0
  608. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/bindings.rs +280 -0
  609. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/ctx.rs +667 -0
  610. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/filesystem.rs +446 -0
  611. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/lib.rs +426 -0
  612. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/preview0.rs +877 -0
  613. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/preview1.rs +2660 -0
  614. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/tests/all/api.rs +198 -0
  615. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/tests/all/async_.rs +397 -0
  616. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/tests/all/main.rs +91 -0
  617. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/tests/all/preview1.rs +251 -0
  618. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/tests/all/sync.rs +331 -0
  619. data/ext/cargo-vendor/wasmtime-winch-21.0.1/.cargo-checksum.json +1 -0
  620. data/ext/cargo-vendor/wasmtime-winch-21.0.1/Cargo.toml +81 -0
  621. data/ext/cargo-vendor/wasmtime-winch-21.0.1/src/compiler.rs +261 -0
  622. data/ext/cargo-vendor/wasmtime-wit-bindgen-21.0.1/.cargo-checksum.json +1 -0
  623. data/ext/cargo-vendor/wasmtime-wit-bindgen-21.0.1/Cargo.toml +46 -0
  624. data/ext/cargo-vendor/wasmtime-wit-bindgen-21.0.1/src/lib.rs +2541 -0
  625. data/ext/cargo-vendor/wasmtime-wit-bindgen-21.0.1/src/rust.rs +421 -0
  626. data/ext/cargo-vendor/wiggle-21.0.1/.cargo-checksum.json +1 -0
  627. data/ext/cargo-vendor/wiggle-21.0.1/Cargo.toml +123 -0
  628. data/ext/cargo-vendor/wiggle-generate-21.0.1/.cargo-checksum.json +1 -0
  629. data/ext/cargo-vendor/wiggle-generate-21.0.1/Cargo.toml +66 -0
  630. data/ext/cargo-vendor/wiggle-macro-21.0.1/.cargo-checksum.json +1 -0
  631. data/ext/cargo-vendor/wiggle-macro-21.0.1/Cargo.toml +55 -0
  632. data/ext/cargo-vendor/winch-codegen-0.19.1/.cargo-checksum.json +1 -0
  633. data/ext/cargo-vendor/winch-codegen-0.19.1/Cargo.toml +76 -0
  634. data/ext/cargo-vendor/winch-codegen-0.19.1/src/codegen/context.rs +534 -0
  635. data/ext/cargo-vendor/winch-codegen-0.19.1/src/codegen/env.rs +440 -0
  636. data/ext/cargo-vendor/winch-codegen-0.19.1/src/codegen/mod.rs +882 -0
  637. data/ext/cargo-vendor/winch-codegen-0.19.1/src/isa/aarch64/abi.rs +291 -0
  638. data/ext/cargo-vendor/winch-codegen-0.19.1/src/isa/aarch64/address.rs +143 -0
  639. data/ext/cargo-vendor/winch-codegen-0.19.1/src/isa/aarch64/asm.rs +380 -0
  640. data/ext/cargo-vendor/winch-codegen-0.19.1/src/isa/aarch64/masm.rs +566 -0
  641. data/ext/cargo-vendor/winch-codegen-0.19.1/src/isa/aarch64/mod.rs +158 -0
  642. data/ext/cargo-vendor/winch-codegen-0.19.1/src/isa/aarch64/regs.rs +161 -0
  643. data/ext/cargo-vendor/winch-codegen-0.19.1/src/isa/reg.rs +73 -0
  644. data/ext/cargo-vendor/winch-codegen-0.19.1/src/isa/x64/asm.rs +1423 -0
  645. data/ext/cargo-vendor/winch-codegen-0.19.1/src/isa/x64/masm.rs +1120 -0
  646. data/ext/cargo-vendor/winch-codegen-0.19.1/src/masm.rs +941 -0
  647. data/ext/cargo-vendor/winch-codegen-0.19.1/src/regalloc.rs +65 -0
  648. data/ext/cargo-vendor/winch-codegen-0.19.1/src/regset.rs +194 -0
  649. data/ext/cargo-vendor/winch-codegen-0.19.1/src/visitor.rs +2144 -0
  650. data/ext/cargo-vendor/wit-parser-0.207.0/.cargo-checksum.json +1 -0
  651. data/ext/cargo-vendor/wit-parser-0.207.0/Cargo.toml +109 -0
  652. data/ext/cargo-vendor/wit-parser-0.207.0/src/ast/resolve.rs +1442 -0
  653. data/ext/cargo-vendor/wit-parser-0.207.0/src/decoding.rs +1764 -0
  654. data/ext/cargo-vendor/wit-parser-0.207.0/src/lib.rs +777 -0
  655. data/ext/cargo-vendor/wit-parser-0.207.0/src/live.rs +126 -0
  656. data/ext/cargo-vendor/wit-parser-0.207.0/src/resolve.rs +2337 -0
  657. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/resources-multiple-returns-borrow.wit.result +5 -0
  658. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/resources-return-borrow.wit.result +5 -0
  659. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow1.wit +7 -0
  660. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow1.wit.result +5 -0
  661. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow2.wit +8 -0
  662. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow2.wit.result +5 -0
  663. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow3.wit +7 -0
  664. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow3.wit.result +5 -0
  665. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow4.wit +7 -0
  666. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow4.wit.result +5 -0
  667. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow5.wit +7 -0
  668. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow5.wit.result +5 -0
  669. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow6.wit +7 -0
  670. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow6.wit.result +5 -0
  671. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow7.wit +11 -0
  672. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow7.wit.result +5 -0
  673. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow8/deps/baz.wit +9 -0
  674. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow8/foo.wit +7 -0
  675. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow8.wit.result +8 -0
  676. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/world-top-level-resources.wit +24 -0
  677. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/world-top-level-resources.wit.json +231 -0
  678. data/ext/src/lib.rs +1 -0
  679. data/ext/src/ruby_api/config.rs +1 -12
  680. data/ext/src/ruby_api/engine.rs +3 -6
  681. data/ext/src/ruby_api/store.rs +68 -5
  682. data/lib/wasmtime/version.rb +1 -1
  683. metadata +1601 -1408
  684. data/ext/cargo-vendor/bincode-1.3.3/.cargo-checksum.json +0 -1
  685. data/ext/cargo-vendor/bincode-1.3.3/Cargo.toml +0 -37
  686. data/ext/cargo-vendor/bincode-1.3.3/LICENSE.md +0 -21
  687. data/ext/cargo-vendor/bincode-1.3.3/readme.md +0 -112
  688. data/ext/cargo-vendor/bincode-1.3.3/src/byteorder.rs +0 -385
  689. data/ext/cargo-vendor/bincode-1.3.3/src/config/endian.rs +0 -27
  690. data/ext/cargo-vendor/bincode-1.3.3/src/config/int.rs +0 -682
  691. data/ext/cargo-vendor/bincode-1.3.3/src/config/legacy.rs +0 -253
  692. data/ext/cargo-vendor/bincode-1.3.3/src/config/limit.rs +0 -49
  693. data/ext/cargo-vendor/bincode-1.3.3/src/config/mod.rs +0 -408
  694. data/ext/cargo-vendor/bincode-1.3.3/src/config/trailing.rs +0 -37
  695. data/ext/cargo-vendor/bincode-1.3.3/src/de/mod.rs +0 -515
  696. data/ext/cargo-vendor/bincode-1.3.3/src/de/read.rs +0 -202
  697. data/ext/cargo-vendor/bincode-1.3.3/src/error.rs +0 -115
  698. data/ext/cargo-vendor/bincode-1.3.3/src/internal.rs +0 -124
  699. data/ext/cargo-vendor/bincode-1.3.3/src/lib.rs +0 -201
  700. data/ext/cargo-vendor/bincode-1.3.3/src/ser/mod.rs +0 -772
  701. data/ext/cargo-vendor/bincode-1.3.3/tests/test.rs +0 -899
  702. data/ext/cargo-vendor/cranelift-bforest-0.107.2/.cargo-checksum.json +0 -1
  703. data/ext/cargo-vendor/cranelift-bforest-0.107.2/Cargo.toml +0 -40
  704. data/ext/cargo-vendor/cranelift-codegen-0.107.2/.cargo-checksum.json +0 -1
  705. data/ext/cargo-vendor/cranelift-codegen-0.107.2/Cargo.toml +0 -178
  706. data/ext/cargo-vendor/cranelift-codegen-0.107.2/build.rs +0 -396
  707. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/alias_analysis.rs +0 -403
  708. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/context.rs +0 -386
  709. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/ctxhash.rs +0 -167
  710. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/egraph/elaborate.rs +0 -835
  711. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/egraph.rs +0 -838
  712. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/fx.rs +0 -105
  713. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/incremental_cache.rs +0 -256
  714. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/ir/instructions.rs +0 -1019
  715. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/aarch64/abi.rs +0 -1707
  716. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/aarch64/inst/args.rs +0 -779
  717. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/aarch64/inst/emit.rs +0 -3932
  718. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/aarch64/inst/emit_tests.rs +0 -7919
  719. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/aarch64/inst/imms.rs +0 -1218
  720. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/aarch64/inst/mod.rs +0 -3083
  721. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/aarch64/inst/regs.rs +0 -292
  722. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/aarch64/inst.isle +0 -4218
  723. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/aarch64/lower/isle.rs +0 -884
  724. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/aarch64/pcc.rs +0 -565
  725. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/mod.rs +0 -432
  726. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/riscv64/abi.rs +0 -1109
  727. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/riscv64/inst/args.rs +0 -1968
  728. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/riscv64/inst/emit.rs +0 -3466
  729. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/riscv64/inst/emit_tests.rs +0 -2146
  730. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/riscv64/inst/mod.rs +0 -2041
  731. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/riscv64/inst/regs.rs +0 -175
  732. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/riscv64/inst/vector.rs +0 -1162
  733. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/riscv64/inst.isle +0 -2944
  734. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/riscv64/lower/isle.rs +0 -625
  735. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/riscv64/lower.isle +0 -2872
  736. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/s390x/abi.rs +0 -1047
  737. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/s390x/inst/args.rs +0 -347
  738. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/s390x/inst/emit.rs +0 -3646
  739. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/s390x/inst/imms.rs +0 -202
  740. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/s390x/inst/mod.rs +0 -3423
  741. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/s390x/inst/regs.rs +0 -187
  742. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/abi.rs +0 -1369
  743. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/inst/args.rs +0 -2289
  744. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/inst/emit.rs +0 -4383
  745. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/inst/emit_tests.rs +0 -5131
  746. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/inst/mod.rs +0 -2798
  747. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/inst/regs.rs +0 -276
  748. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/inst.isle +0 -5304
  749. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/lower/isle.rs +0 -1066
  750. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/lower.isle +0 -4809
  751. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/lower.rs +0 -339
  752. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/pcc.rs +0 -1003
  753. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/lib.rs +0 -106
  754. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/machinst/abi.rs +0 -2594
  755. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/machinst/blockorder.rs +0 -465
  756. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/machinst/isle.rs +0 -914
  757. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/machinst/lower.rs +0 -1452
  758. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/machinst/mod.rs +0 -555
  759. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/machinst/reg.rs +0 -562
  760. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/machinst/valueregs.rs +0 -132
  761. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/machinst/vcode.rs +0 -1807
  762. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/nan_canonicalization.rs +0 -110
  763. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/opts/arithmetic.isle +0 -179
  764. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/opts/icmp.isle +0 -197
  765. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/remove_constant_phis.rs +0 -420
  766. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/scoped_hash_map.rs +0 -310
  767. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/settings.rs +0 -591
  768. data/ext/cargo-vendor/cranelift-codegen-meta-0.107.2/.cargo-checksum.json +0 -1
  769. data/ext/cargo-vendor/cranelift-codegen-meta-0.107.2/Cargo.toml +0 -35
  770. data/ext/cargo-vendor/cranelift-codegen-meta-0.107.2/src/gen_inst.rs +0 -1784
  771. data/ext/cargo-vendor/cranelift-codegen-meta-0.107.2/src/gen_settings.rs +0 -508
  772. data/ext/cargo-vendor/cranelift-codegen-meta-0.107.2/src/gen_types.rs +0 -75
  773. data/ext/cargo-vendor/cranelift-codegen-meta-0.107.2/src/isa/riscv64.rs +0 -160
  774. data/ext/cargo-vendor/cranelift-codegen-meta-0.107.2/src/isa/x86.rs +0 -402
  775. data/ext/cargo-vendor/cranelift-codegen-meta-0.107.2/src/lib.rs +0 -59
  776. data/ext/cargo-vendor/cranelift-codegen-meta-0.107.2/src/shared/settings.rs +0 -355
  777. data/ext/cargo-vendor/cranelift-codegen-meta-0.107.2/src/srcgen.rs +0 -470
  778. data/ext/cargo-vendor/cranelift-codegen-shared-0.107.2/.cargo-checksum.json +0 -1
  779. data/ext/cargo-vendor/cranelift-codegen-shared-0.107.2/Cargo.toml +0 -22
  780. data/ext/cargo-vendor/cranelift-control-0.107.2/.cargo-checksum.json +0 -1
  781. data/ext/cargo-vendor/cranelift-control-0.107.2/Cargo.toml +0 -30
  782. data/ext/cargo-vendor/cranelift-entity-0.107.2/.cargo-checksum.json +0 -1
  783. data/ext/cargo-vendor/cranelift-entity-0.107.2/Cargo.toml +0 -50
  784. data/ext/cargo-vendor/cranelift-entity-0.107.2/src/lib.rs +0 -317
  785. data/ext/cargo-vendor/cranelift-frontend-0.107.2/.cargo-checksum.json +0 -1
  786. data/ext/cargo-vendor/cranelift-frontend-0.107.2/Cargo.toml +0 -69
  787. data/ext/cargo-vendor/cranelift-frontend-0.107.2/src/switch.rs +0 -654
  788. data/ext/cargo-vendor/cranelift-isle-0.107.2/.cargo-checksum.json +0 -1
  789. data/ext/cargo-vendor/cranelift-isle-0.107.2/Cargo.toml +0 -46
  790. data/ext/cargo-vendor/cranelift-isle-0.107.2/src/codegen.rs +0 -886
  791. data/ext/cargo-vendor/cranelift-isle-0.107.2/src/lib.rs +0 -271
  792. data/ext/cargo-vendor/cranelift-isle-0.107.2/src/sema.rs +0 -2492
  793. data/ext/cargo-vendor/cranelift-isle-0.107.2/src/serialize.rs +0 -846
  794. data/ext/cargo-vendor/cranelift-isle-0.107.2/src/trie_again.rs +0 -683
  795. data/ext/cargo-vendor/cranelift-native-0.107.2/.cargo-checksum.json +0 -1
  796. data/ext/cargo-vendor/cranelift-native-0.107.2/Cargo.toml +0 -45
  797. data/ext/cargo-vendor/cranelift-wasm-0.107.2/.cargo-checksum.json +0 -1
  798. data/ext/cargo-vendor/cranelift-wasm-0.107.2/Cargo.toml +0 -107
  799. data/ext/cargo-vendor/cranelift-wasm-0.107.2/src/code_translator.rs +0 -3683
  800. data/ext/cargo-vendor/cranelift-wasm-0.107.2/src/environ/dummy.rs +0 -912
  801. data/ext/cargo-vendor/cranelift-wasm-0.107.2/src/environ/spec.rs +0 -945
  802. data/ext/cargo-vendor/cranelift-wasm-0.107.2/src/sections_translator.rs +0 -409
  803. data/ext/cargo-vendor/deterministic-wasi-ctx-0.1.21/.cargo-checksum.json +0 -1
  804. data/ext/cargo-vendor/deterministic-wasi-ctx-0.1.21/Cargo.toml +0 -48
  805. data/ext/cargo-vendor/rb-sys-0.9.97/.cargo-checksum.json +0 -1
  806. data/ext/cargo-vendor/rb-sys-0.9.97/Cargo.toml +0 -54
  807. data/ext/cargo-vendor/rb-sys-0.9.97/build/main.rs +0 -238
  808. data/ext/cargo-vendor/rb-sys-0.9.97/build/stable_api_config.rs +0 -133
  809. data/ext/cargo-vendor/rb-sys-0.9.97/src/bindings.rs +0 -20
  810. data/ext/cargo-vendor/rb-sys-0.9.97/src/tracking_allocator.rs +0 -265
  811. data/ext/cargo-vendor/rb-sys-build-0.9.97/.cargo-checksum.json +0 -1
  812. data/ext/cargo-vendor/rb-sys-build-0.9.97/Cargo.toml +0 -62
  813. data/ext/cargo-vendor/rb-sys-build-0.9.97/src/bindings/stable_api.rs +0 -202
  814. data/ext/cargo-vendor/rb-sys-build-0.9.97/src/bindings.rs +0 -250
  815. data/ext/cargo-vendor/rb-sys-build-0.9.97/src/cc.rs +0 -365
  816. data/ext/cargo-vendor/rb-sys-build-0.9.97/src/utils.rs +0 -52
  817. data/ext/cargo-vendor/wasi-common-20.0.2/.cargo-checksum.json +0 -1
  818. data/ext/cargo-vendor/wasi-common-20.0.2/Cargo.toml +0 -220
  819. data/ext/cargo-vendor/wasi-common-20.0.2/tests/all/async_.rs +0 -293
  820. data/ext/cargo-vendor/wasi-common-20.0.2/tests/all/main.rs +0 -21
  821. data/ext/cargo-vendor/wasi-common-20.0.2/tests/all/sync.rs +0 -279
  822. data/ext/cargo-vendor/wasm-encoder-0.202.0/.cargo-checksum.json +0 -1
  823. data/ext/cargo-vendor/wasm-encoder-0.202.0/Cargo.toml +0 -43
  824. data/ext/cargo-vendor/wasm-encoder-0.202.0/src/core/code.rs +0 -3444
  825. data/ext/cargo-vendor/wasm-encoder-0.202.0/src/core/data.rs +0 -185
  826. data/ext/cargo-vendor/wasm-encoder-0.202.0/src/core/elements.rs +0 -220
  827. data/ext/cargo-vendor/wasm-encoder-0.202.0/src/core/globals.rs +0 -101
  828. data/ext/cargo-vendor/wasm-encoder-0.202.0/src/core/imports.rs +0 -156
  829. data/ext/cargo-vendor/wasm-encoder-0.202.0/src/core/memories.rs +0 -111
  830. data/ext/cargo-vendor/wasm-encoder-0.202.0/src/core/tables.rs +0 -116
  831. data/ext/cargo-vendor/wasm-encoder-0.202.0/src/core/types.rs +0 -673
  832. data/ext/cargo-vendor/wasmparser-0.202.0/.cargo-checksum.json +0 -1
  833. data/ext/cargo-vendor/wasmparser-0.202.0/Cargo.lock +0 -744
  834. data/ext/cargo-vendor/wasmparser-0.202.0/Cargo.toml +0 -66
  835. data/ext/cargo-vendor/wasmparser-0.202.0/src/binary_reader.rs +0 -1849
  836. data/ext/cargo-vendor/wasmparser-0.202.0/src/lib.rs +0 -766
  837. data/ext/cargo-vendor/wasmparser-0.202.0/src/limits.rs +0 -64
  838. data/ext/cargo-vendor/wasmparser-0.202.0/src/parser.rs +0 -1611
  839. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/component/canonicals.rs +0 -120
  840. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/component/instances.rs +0 -163
  841. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/component/names.rs +0 -102
  842. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/component/start.rs +0 -30
  843. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/component/types.rs +0 -549
  844. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/core/code.rs +0 -146
  845. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/core/coredumps.rs +0 -243
  846. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/core/custom.rs +0 -63
  847. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/core/data.rs +0 -96
  848. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/core/dylink0.rs +0 -109
  849. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/core/elements.rs +0 -152
  850. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/core/globals.rs +0 -49
  851. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/core/linking.rs +0 -449
  852. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/core/memories.rs +0 -56
  853. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/core/names.rs +0 -156
  854. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/core/operators.rs +0 -411
  855. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/core/tables.rs +0 -87
  856. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/core/types/matches.rs +0 -277
  857. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/core/types.rs +0 -1680
  858. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/core.rs +0 -41
  859. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers.rs +0 -316
  860. data/ext/cargo-vendor/wasmparser-0.202.0/src/resources.rs +0 -235
  861. data/ext/cargo-vendor/wasmparser-0.202.0/src/validator/component.rs +0 -3238
  862. data/ext/cargo-vendor/wasmparser-0.202.0/src/validator/core/canonical.rs +0 -233
  863. data/ext/cargo-vendor/wasmparser-0.202.0/src/validator/core.rs +0 -1400
  864. data/ext/cargo-vendor/wasmparser-0.202.0/src/validator/func.rs +0 -338
  865. data/ext/cargo-vendor/wasmparser-0.202.0/src/validator/names.rs +0 -929
  866. data/ext/cargo-vendor/wasmparser-0.202.0/src/validator/operators.rs +0 -4076
  867. data/ext/cargo-vendor/wasmparser-0.202.0/src/validator/types.rs +0 -4449
  868. data/ext/cargo-vendor/wasmparser-0.202.0/src/validator.rs +0 -1619
  869. data/ext/cargo-vendor/wasmprinter-0.202.0/.cargo-checksum.json +0 -1
  870. data/ext/cargo-vendor/wasmprinter-0.202.0/Cargo.toml +0 -45
  871. data/ext/cargo-vendor/wasmprinter-0.202.0/src/lib.rs +0 -3202
  872. data/ext/cargo-vendor/wasmprinter-0.202.0/src/operator.rs +0 -1131
  873. data/ext/cargo-vendor/wasmprinter-0.202.0/tests/all.rs +0 -279
  874. data/ext/cargo-vendor/wasmtime-20.0.2/.cargo-checksum.json +0 -1
  875. data/ext/cargo-vendor/wasmtime-20.0.2/Cargo.toml +0 -268
  876. data/ext/cargo-vendor/wasmtime-20.0.2/src/compile/code_builder.rs +0 -201
  877. data/ext/cargo-vendor/wasmtime-20.0.2/src/compile/runtime.rs +0 -175
  878. data/ext/cargo-vendor/wasmtime-20.0.2/src/compile.rs +0 -897
  879. data/ext/cargo-vendor/wasmtime-20.0.2/src/config.rs +0 -2695
  880. data/ext/cargo-vendor/wasmtime-20.0.2/src/engine/serialization.rs +0 -849
  881. data/ext/cargo-vendor/wasmtime-20.0.2/src/engine.rs +0 -741
  882. data/ext/cargo-vendor/wasmtime-20.0.2/src/lib.rs +0 -303
  883. data/ext/cargo-vendor/wasmtime-20.0.2/src/profiling_agent/jitdump.rs +0 -66
  884. data/ext/cargo-vendor/wasmtime-20.0.2/src/profiling_agent/perfmap.rs +0 -47
  885. data/ext/cargo-vendor/wasmtime-20.0.2/src/profiling_agent/vtune.rs +0 -80
  886. data/ext/cargo-vendor/wasmtime-20.0.2/src/profiling_agent.rs +0 -105
  887. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/code.rs +0 -102
  888. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/code_memory.rs +0 -335
  889. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/component/component.rs +0 -661
  890. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/component/func/host.rs +0 -439
  891. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/component/func/options.rs +0 -554
  892. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/component/func/typed.rs +0 -2484
  893. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/component/func.rs +0 -747
  894. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/component/instance.rs +0 -804
  895. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/component/linker.rs +0 -786
  896. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/component/matching.rs +0 -217
  897. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/component/mod.rs +0 -756
  898. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/component/resource_table.rs +0 -350
  899. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/component/resources.rs +0 -1133
  900. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/component/storage.rs +0 -43
  901. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/component/store.rs +0 -28
  902. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/component/types.rs +0 -892
  903. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/component/values.rs +0 -978
  904. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/coredump.rs +0 -336
  905. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/debug.rs +0 -165
  906. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/externals/global.rs +0 -300
  907. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/externals/table.rs +0 -480
  908. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/externals.rs +0 -236
  909. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/func/typed.rs +0 -898
  910. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/func.rs +0 -2633
  911. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/gc/disabled/anyref.rs +0 -46
  912. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/gc/disabled/externref.rs +0 -50
  913. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/gc/disabled/rooting.rs +0 -222
  914. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/gc/enabled/anyref.rs +0 -472
  915. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/gc/enabled/externref.rs +0 -644
  916. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/gc/enabled/i31.rs +0 -345
  917. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/gc/enabled/rooting.rs +0 -1543
  918. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/gc.rs +0 -87
  919. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/instance.rs +0 -992
  920. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/instantiate.rs +0 -345
  921. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/limits.rs +0 -398
  922. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/linker.rs +0 -1521
  923. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/memory.rs +0 -999
  924. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/module/registry.rs +0 -354
  925. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/module.rs +0 -1295
  926. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/profiling.rs +0 -224
  927. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/resources.rs +0 -33
  928. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/signatures.rs +0 -216
  929. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/stack.rs +0 -73
  930. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/store/context.rs +0 -243
  931. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/store/data.rs +0 -289
  932. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/store/func_refs.rs +0 -85
  933. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/store.rs +0 -2796
  934. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/trampoline/func.rs +0 -138
  935. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/trampoline/global.rs +0 -68
  936. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/trampoline/memory.rs +0 -286
  937. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/trampoline/table.rs +0 -34
  938. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/trampoline.rs +0 -77
  939. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/trap.rs +0 -641
  940. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/type_registry.rs +0 -632
  941. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/types/matching.rs +0 -367
  942. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/types.rs +0 -1378
  943. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/unix.rs +0 -39
  944. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/v128.rs +0 -131
  945. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/values.rs +0 -945
  946. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/windows.rs +0 -34
  947. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime.rs +0 -112
  948. data/ext/cargo-vendor/wasmtime-asm-macros-20.0.2/.cargo-checksum.json +0 -1
  949. data/ext/cargo-vendor/wasmtime-asm-macros-20.0.2/Cargo.toml +0 -22
  950. data/ext/cargo-vendor/wasmtime-asm-macros-20.0.2/src/lib.rs +0 -81
  951. data/ext/cargo-vendor/wasmtime-cache-20.0.2/.cargo-checksum.json +0 -1
  952. data/ext/cargo-vendor/wasmtime-cache-20.0.2/Cargo.toml +0 -81
  953. data/ext/cargo-vendor/wasmtime-cache-20.0.2/src/lib.rs +0 -235
  954. data/ext/cargo-vendor/wasmtime-component-macro-20.0.2/.cargo-checksum.json +0 -1
  955. data/ext/cargo-vendor/wasmtime-component-macro-20.0.2/Cargo.toml +0 -67
  956. data/ext/cargo-vendor/wasmtime-component-macro-20.0.2/src/bindgen.rs +0 -390
  957. data/ext/cargo-vendor/wasmtime-component-macro-20.0.2/src/component.rs +0 -1295
  958. data/ext/cargo-vendor/wasmtime-component-macro-20.0.2/tests/codegen.rs +0 -342
  959. data/ext/cargo-vendor/wasmtime-component-util-20.0.2/.cargo-checksum.json +0 -1
  960. data/ext/cargo-vendor/wasmtime-component-util-20.0.2/Cargo.toml +0 -25
  961. data/ext/cargo-vendor/wasmtime-component-util-20.0.2/src/lib.rs +0 -180
  962. data/ext/cargo-vendor/wasmtime-cranelift-20.0.2/.cargo-checksum.json +0 -1
  963. data/ext/cargo-vendor/wasmtime-cranelift-20.0.2/Cargo.toml +0 -114
  964. data/ext/cargo-vendor/wasmtime-cranelift-20.0.2/src/compiler/component.rs +0 -962
  965. data/ext/cargo-vendor/wasmtime-cranelift-20.0.2/src/compiler.rs +0 -1369
  966. data/ext/cargo-vendor/wasmtime-cranelift-20.0.2/src/debug/gc.rs +0 -239
  967. data/ext/cargo-vendor/wasmtime-cranelift-20.0.2/src/debug/transform/attr.rs +0 -345
  968. data/ext/cargo-vendor/wasmtime-cranelift-20.0.2/src/debug/transform/expression.rs +0 -1252
  969. data/ext/cargo-vendor/wasmtime-cranelift-20.0.2/src/debug/transform/line_program.rs +0 -282
  970. data/ext/cargo-vendor/wasmtime-cranelift-20.0.2/src/debug/transform/mod.rs +0 -126
  971. data/ext/cargo-vendor/wasmtime-cranelift-20.0.2/src/debug/transform/unit.rs +0 -522
  972. data/ext/cargo-vendor/wasmtime-cranelift-20.0.2/src/debug/transform/utils.rs +0 -187
  973. data/ext/cargo-vendor/wasmtime-cranelift-20.0.2/src/debug/write_debuginfo.rs +0 -187
  974. data/ext/cargo-vendor/wasmtime-cranelift-20.0.2/src/debug.rs +0 -18
  975. data/ext/cargo-vendor/wasmtime-cranelift-20.0.2/src/func_environ.rs +0 -2672
  976. data/ext/cargo-vendor/wasmtime-cranelift-20.0.2/src/gc/enabled.rs +0 -649
  977. data/ext/cargo-vendor/wasmtime-cranelift-20.0.2/src/gc.rs +0 -198
  978. data/ext/cargo-vendor/wasmtime-cranelift-20.0.2/src/lib.rs +0 -505
  979. data/ext/cargo-vendor/wasmtime-environ-20.0.2/.cargo-checksum.json +0 -1
  980. data/ext/cargo-vendor/wasmtime-environ-20.0.2/Cargo.lock +0 -782
  981. data/ext/cargo-vendor/wasmtime-environ-20.0.2/Cargo.toml +0 -144
  982. data/ext/cargo-vendor/wasmtime-environ-20.0.2/examples/factc.rs +0 -205
  983. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/compile/address_map.rs +0 -72
  984. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/compile/mod.rs +0 -389
  985. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/compile/module_artifacts.rs +0 -300
  986. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/compile/trap_encoding.rs +0 -69
  987. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/component/compiler.rs +0 -19
  988. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/component/dfg.rs +0 -690
  989. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/component/info.rs +0 -672
  990. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/component/translate/adapt.rs +0 -459
  991. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/component/translate.rs +0 -965
  992. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/component/types/resources.rs +0 -234
  993. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/component/types.rs +0 -1972
  994. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/component.rs +0 -103
  995. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/demangling.rs +0 -28
  996. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/fact/core_types.rs +0 -24
  997. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/fact/signature.rs +0 -135
  998. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/fact/trampoline.rs +0 -3233
  999. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/fact/transcode.rs +0 -89
  1000. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/fact/traps.rs +0 -115
  1001. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/fact.rs +0 -711
  1002. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/lib.rs +0 -70
  1003. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/module.rs +0 -780
  1004. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/module_artifacts.rs +0 -145
  1005. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/module_environ.rs +0 -1288
  1006. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/module_types.rs +0 -122
  1007. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/scopevec.rs +0 -78
  1008. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/stack_map.rs +0 -36
  1009. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/trap_encoding.rs +0 -188
  1010. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/tunables.rs +0 -158
  1011. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/vmoffsets.rs +0 -952
  1012. data/ext/cargo-vendor/wasmtime-fiber-20.0.2/.cargo-checksum.json +0 -1
  1013. data/ext/cargo-vendor/wasmtime-fiber-20.0.2/Cargo.toml +0 -63
  1014. data/ext/cargo-vendor/wasmtime-fiber-20.0.2/build.rs +0 -26
  1015. data/ext/cargo-vendor/wasmtime-fiber-20.0.2/src/lib.rs +0 -328
  1016. data/ext/cargo-vendor/wasmtime-fiber-20.0.2/src/unix.rs +0 -265
  1017. data/ext/cargo-vendor/wasmtime-fiber-20.0.2/src/windows.rs +0 -166
  1018. data/ext/cargo-vendor/wasmtime-jit-debug-20.0.2/.cargo-checksum.json +0 -1
  1019. data/ext/cargo-vendor/wasmtime-jit-debug-20.0.2/Cargo.toml +0 -67
  1020. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-20.0.2/.cargo-checksum.json +0 -1
  1021. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-20.0.2/Cargo.toml +0 -47
  1022. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-20.0.2/src/lib.rs +0 -108
  1023. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-20.0.2/src/libc.rs +0 -149
  1024. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-20.0.2/src/miri.rs +0 -10
  1025. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-20.0.2/src/win.rs +0 -45
  1026. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/.cargo-checksum.json +0 -1
  1027. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/Cargo.toml +0 -147
  1028. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/build.rs +0 -24
  1029. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/arch/aarch64.rs +0 -76
  1030. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/arch/x86_64.rs +0 -41
  1031. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/async_yield.rs +0 -35
  1032. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/component/libcalls.rs +0 -571
  1033. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/component/resources.rs +0 -351
  1034. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/component.rs +0 -860
  1035. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/cow.rs +0 -888
  1036. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/debug_builtins.rs +0 -59
  1037. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/export.rs +0 -108
  1038. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/gc/disabled.rs +0 -23
  1039. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/gc/enabled/drc.rs +0 -963
  1040. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/gc/enabled/externref.rs +0 -115
  1041. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/gc/enabled/free_list.rs +0 -767
  1042. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/gc/enabled.rs +0 -18
  1043. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/gc/gc_ref.rs +0 -486
  1044. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/gc/gc_runtime.rs +0 -503
  1045. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/gc/host_data.rs +0 -81
  1046. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/gc/i31.rs +0 -86
  1047. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/gc.rs +0 -244
  1048. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/imports.rs +0 -27
  1049. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/instance/allocator/on_demand.rs +0 -217
  1050. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/instance/allocator/pooling/gc_heap_pool.rs +0 -92
  1051. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/instance/allocator/pooling/index_allocator.rs +0 -704
  1052. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/instance/allocator/pooling/memory_pool.rs +0 -996
  1053. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/instance/allocator/pooling/stack_pool.rs +0 -242
  1054. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/instance/allocator/pooling/table_pool.rs +0 -231
  1055. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/instance/allocator/pooling.rs +0 -699
  1056. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/instance/allocator.rs +0 -780
  1057. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/instance.rs +0 -1566
  1058. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/lib.rs +0 -289
  1059. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/libcalls.rs +0 -777
  1060. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/memory.rs +0 -751
  1061. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/mmap.rs +0 -214
  1062. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/mmap_vec.rs +0 -201
  1063. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/module_id.rs +0 -43
  1064. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/mpk/enabled.rs +0 -213
  1065. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/mpk/mod.rs +0 -54
  1066. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/mpk/pkru.rs +0 -104
  1067. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/mpk/sys.rs +0 -113
  1068. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/send_sync_ptr.rs +0 -106
  1069. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/store_box.rs +0 -35
  1070. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/custom/capi.rs +0 -189
  1071. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/custom/mmap.rs +0 -111
  1072. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/custom/mod.rs +0 -24
  1073. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/custom/traphandlers.rs +0 -55
  1074. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/custom/vm.rs +0 -108
  1075. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/miri/mmap.rs +0 -94
  1076. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/miri/mod.rs +0 -10
  1077. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/miri/traphandlers.rs +0 -47
  1078. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/mod.rs +0 -33
  1079. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/unix/machports.rs +0 -416
  1080. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/unix/mmap.rs +0 -151
  1081. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/unix/mod.rs +0 -21
  1082. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/unix/signals.rs +0 -401
  1083. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/unix/unwind.rs +0 -149
  1084. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/unix/vm.rs +0 -208
  1085. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/windows/mmap.rs +0 -216
  1086. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/windows/mod.rs +0 -6
  1087. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/windows/traphandlers.rs +0 -104
  1088. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/table.rs +0 -851
  1089. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/threads/parking_spot.rs +0 -621
  1090. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/threads/shared_memory.rs +0 -230
  1091. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/threads/shared_memory_disabled.rs +0 -100
  1092. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/traphandlers/backtrace.rs +0 -265
  1093. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/traphandlers/coredump_disabled.rs +0 -16
  1094. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/traphandlers/coredump_enabled.rs +0 -40
  1095. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/traphandlers.rs +0 -785
  1096. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/vmcontext/vm_host_func_context.rs +0 -137
  1097. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/vmcontext.rs +0 -1293
  1098. data/ext/cargo-vendor/wasmtime-slab-20.0.2/.cargo-checksum.json +0 -1
  1099. data/ext/cargo-vendor/wasmtime-slab-20.0.2/Cargo.toml +0 -21
  1100. data/ext/cargo-vendor/wasmtime-slab-20.0.2/src/lib.rs +0 -493
  1101. data/ext/cargo-vendor/wasmtime-types-20.0.2/.cargo-checksum.json +0 -1
  1102. data/ext/cargo-vendor/wasmtime-types-20.0.2/Cargo.toml +0 -36
  1103. data/ext/cargo-vendor/wasmtime-types-20.0.2/src/error.rs +0 -59
  1104. data/ext/cargo-vendor/wasmtime-types-20.0.2/src/lib.rs +0 -832
  1105. data/ext/cargo-vendor/wasmtime-versioned-export-macros-20.0.2/.cargo-checksum.json +0 -1
  1106. data/ext/cargo-vendor/wasmtime-versioned-export-macros-20.0.2/Cargo.toml +0 -32
  1107. data/ext/cargo-vendor/wasmtime-wasi-20.0.2/.cargo-checksum.json +0 -1
  1108. data/ext/cargo-vendor/wasmtime-wasi-20.0.2/Cargo.toml +0 -194
  1109. data/ext/cargo-vendor/wasmtime-wasi-20.0.2/src/bindings.rs +0 -283
  1110. data/ext/cargo-vendor/wasmtime-wasi-20.0.2/src/ctx.rs +0 -659
  1111. data/ext/cargo-vendor/wasmtime-wasi-20.0.2/src/filesystem.rs +0 -433
  1112. data/ext/cargo-vendor/wasmtime-wasi-20.0.2/src/lib.rs +0 -404
  1113. data/ext/cargo-vendor/wasmtime-wasi-20.0.2/src/preview0.rs +0 -879
  1114. data/ext/cargo-vendor/wasmtime-wasi-20.0.2/src/preview1.rs +0 -2601
  1115. data/ext/cargo-vendor/wasmtime-wasi-20.0.2/tests/all/api.rs +0 -194
  1116. data/ext/cargo-vendor/wasmtime-wasi-20.0.2/tests/all/async_.rs +0 -397
  1117. data/ext/cargo-vendor/wasmtime-wasi-20.0.2/tests/all/main.rs +0 -91
  1118. data/ext/cargo-vendor/wasmtime-wasi-20.0.2/tests/all/preview1.rs +0 -251
  1119. data/ext/cargo-vendor/wasmtime-wasi-20.0.2/tests/all/sync.rs +0 -333
  1120. data/ext/cargo-vendor/wasmtime-winch-20.0.2/.cargo-checksum.json +0 -1
  1121. data/ext/cargo-vendor/wasmtime-winch-20.0.2/Cargo.toml +0 -81
  1122. data/ext/cargo-vendor/wasmtime-winch-20.0.2/src/compiler.rs +0 -257
  1123. data/ext/cargo-vendor/wasmtime-wit-bindgen-20.0.2/.cargo-checksum.json +0 -1
  1124. data/ext/cargo-vendor/wasmtime-wit-bindgen-20.0.2/Cargo.toml +0 -41
  1125. data/ext/cargo-vendor/wasmtime-wit-bindgen-20.0.2/src/lib.rs +0 -2213
  1126. data/ext/cargo-vendor/wasmtime-wit-bindgen-20.0.2/src/rust.rs +0 -421
  1127. data/ext/cargo-vendor/wiggle-20.0.2/.cargo-checksum.json +0 -1
  1128. data/ext/cargo-vendor/wiggle-20.0.2/Cargo.toml +0 -122
  1129. data/ext/cargo-vendor/wiggle-generate-20.0.2/.cargo-checksum.json +0 -1
  1130. data/ext/cargo-vendor/wiggle-generate-20.0.2/Cargo.toml +0 -65
  1131. data/ext/cargo-vendor/wiggle-generate-20.0.2/LICENSE +0 -220
  1132. data/ext/cargo-vendor/wiggle-macro-20.0.2/.cargo-checksum.json +0 -1
  1133. data/ext/cargo-vendor/wiggle-macro-20.0.2/Cargo.toml +0 -55
  1134. data/ext/cargo-vendor/wiggle-macro-20.0.2/LICENSE +0 -220
  1135. data/ext/cargo-vendor/winch-codegen-0.18.2/.cargo-checksum.json +0 -1
  1136. data/ext/cargo-vendor/winch-codegen-0.18.2/Cargo.toml +0 -81
  1137. data/ext/cargo-vendor/winch-codegen-0.18.2/src/codegen/context.rs +0 -534
  1138. data/ext/cargo-vendor/winch-codegen-0.18.2/src/codegen/env.rs +0 -435
  1139. data/ext/cargo-vendor/winch-codegen-0.18.2/src/codegen/mod.rs +0 -756
  1140. data/ext/cargo-vendor/winch-codegen-0.18.2/src/isa/aarch64/abi.rs +0 -291
  1141. data/ext/cargo-vendor/winch-codegen-0.18.2/src/isa/aarch64/address.rs +0 -144
  1142. data/ext/cargo-vendor/winch-codegen-0.18.2/src/isa/aarch64/asm.rs +0 -252
  1143. data/ext/cargo-vendor/winch-codegen-0.18.2/src/isa/aarch64/masm.rs +0 -573
  1144. data/ext/cargo-vendor/winch-codegen-0.18.2/src/isa/aarch64/mod.rs +0 -154
  1145. data/ext/cargo-vendor/winch-codegen-0.18.2/src/isa/aarch64/regs.rs +0 -149
  1146. data/ext/cargo-vendor/winch-codegen-0.18.2/src/isa/reg.rs +0 -86
  1147. data/ext/cargo-vendor/winch-codegen-0.18.2/src/isa/x64/asm.rs +0 -1423
  1148. data/ext/cargo-vendor/winch-codegen-0.18.2/src/isa/x64/masm.rs +0 -1256
  1149. data/ext/cargo-vendor/winch-codegen-0.18.2/src/masm.rs +0 -947
  1150. data/ext/cargo-vendor/winch-codegen-0.18.2/src/regalloc.rs +0 -65
  1151. data/ext/cargo-vendor/winch-codegen-0.18.2/src/regset.rs +0 -194
  1152. data/ext/cargo-vendor/winch-codegen-0.18.2/src/visitor.rs +0 -2149
  1153. data/ext/cargo-vendor/wit-parser-0.202.0/.cargo-checksum.json +0 -1
  1154. data/ext/cargo-vendor/wit-parser-0.202.0/Cargo.toml +0 -101
  1155. data/ext/cargo-vendor/wit-parser-0.202.0/src/ast/resolve.rs +0 -1443
  1156. data/ext/cargo-vendor/wit-parser-0.202.0/src/decoding.rs +0 -1764
  1157. data/ext/cargo-vendor/wit-parser-0.202.0/src/lib.rs +0 -765
  1158. data/ext/cargo-vendor/wit-parser-0.202.0/src/live.rs +0 -111
  1159. data/ext/cargo-vendor/wit-parser-0.202.0/src/resolve.rs +0 -2240
  1160. data/ext/cargo-vendor/wit-parser-0.202.0/tests/ui/resources-multiple-returns-borrow.wit.json +0 -74
  1161. data/ext/cargo-vendor/wit-parser-0.202.0/tests/ui/resources-return-borrow.wit.json +0 -69
  1162. data/ext/cargo-vendor/wit-parser-0.202.0/tests/ui/world-top-level-resources.wit +0 -24
  1163. data/ext/cargo-vendor/wit-parser-0.202.0/tests/ui/world-top-level-resources.wit.json +0 -240
  1164. data/ext/src/ruby_api/config/tracked_memory_creator.rs +0 -82
  1165. /data/ext/cargo-vendor/{cranelift-bforest-0.107.2 → cranelift-bforest-0.108.1}/LICENSE +0 -0
  1166. /data/ext/cargo-vendor/{cranelift-bforest-0.107.2 → cranelift-bforest-0.108.1}/README.md +0 -0
  1167. /data/ext/cargo-vendor/{cranelift-bforest-0.107.2 → cranelift-bforest-0.108.1}/src/lib.rs +0 -0
  1168. /data/ext/cargo-vendor/{cranelift-bforest-0.107.2 → cranelift-bforest-0.108.1}/src/map.rs +0 -0
  1169. /data/ext/cargo-vendor/{cranelift-bforest-0.107.2 → cranelift-bforest-0.108.1}/src/node.rs +0 -0
  1170. /data/ext/cargo-vendor/{cranelift-bforest-0.107.2 → cranelift-bforest-0.108.1}/src/path.rs +0 -0
  1171. /data/ext/cargo-vendor/{cranelift-bforest-0.107.2 → cranelift-bforest-0.108.1}/src/pool.rs +0 -0
  1172. /data/ext/cargo-vendor/{cranelift-bforest-0.107.2 → cranelift-bforest-0.108.1}/src/set.rs +0 -0
  1173. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/LICENSE +0 -0
  1174. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/README.md +0 -0
  1175. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/benches/x64-evex-encoding.rs +0 -0
  1176. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/binemit/mod.rs +0 -0
  1177. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/binemit/stack_map.rs +0 -0
  1178. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/bitset.rs +0 -0
  1179. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/cfg_printer.rs +0 -0
  1180. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/constant_hash.rs +0 -0
  1181. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/cursor.rs +0 -0
  1182. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/data_value.rs +0 -0
  1183. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/dbg.rs +0 -0
  1184. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/dce.rs +0 -0
  1185. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/dominator_tree.rs +0 -0
  1186. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/egraph/cost.rs +0 -0
  1187. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/flowgraph.rs +0 -0
  1188. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/inst_predicates.rs +0 -0
  1189. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/atomic_rmw_op.rs +0 -0
  1190. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/builder.rs +0 -0
  1191. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/condcodes.rs +0 -0
  1192. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/constant.rs +0 -0
  1193. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/dfg.rs +0 -0
  1194. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/dynamic_type.rs +0 -0
  1195. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/entities.rs +0 -0
  1196. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/extfunc.rs +0 -0
  1197. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/extname.rs +0 -0
  1198. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/function.rs +0 -0
  1199. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/globalvalue.rs +0 -0
  1200. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/immediates.rs +0 -0
  1201. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/jumptable.rs +0 -0
  1202. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/known_symbol.rs +0 -0
  1203. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/layout.rs +0 -0
  1204. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/libcall.rs +0 -0
  1205. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/memflags.rs +0 -0
  1206. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/memtype.rs +0 -0
  1207. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/mod.rs +0 -0
  1208. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/pcc.rs +0 -0
  1209. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/progpoint.rs +0 -0
  1210. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/sourceloc.rs +0 -0
  1211. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/stackslot.rs +0 -0
  1212. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/trapcode.rs +0 -0
  1213. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/types.rs +0 -0
  1214. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/aarch64/inst/unwind/systemv.rs +0 -0
  1215. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/aarch64/inst/unwind.rs +0 -0
  1216. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/aarch64/inst_neon.isle +0 -0
  1217. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/aarch64/lower/isle/generated_code.rs +0 -0
  1218. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/aarch64/lower.isle +0 -0
  1219. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/aarch64/lower.rs +0 -0
  1220. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/aarch64/lower_dynamic_neon.isle +0 -0
  1221. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/aarch64/mod.rs +0 -0
  1222. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/aarch64/settings.rs +0 -0
  1223. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/call_conv.rs +0 -0
  1224. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/riscv64/inst/encode.rs +0 -0
  1225. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/riscv64/inst/imms.rs +0 -0
  1226. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/riscv64/inst/unwind/systemv.rs +0 -0
  1227. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/riscv64/inst/unwind.rs +0 -0
  1228. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/riscv64/inst_vector.isle +0 -0
  1229. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/riscv64/lower/isle/generated_code.rs +0 -0
  1230. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/riscv64/lower.rs +0 -0
  1231. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/riscv64/mod.rs +0 -0
  1232. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/riscv64/settings.rs +0 -0
  1233. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/s390x/inst/emit_tests.rs +0 -0
  1234. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/s390x/inst/unwind/systemv.rs +0 -0
  1235. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/s390x/inst/unwind.rs +0 -0
  1236. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/s390x/inst.isle +0 -0
  1237. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/s390x/lower/isle/generated_code.rs +0 -0
  1238. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/s390x/lower/isle.rs +0 -0
  1239. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/s390x/lower.isle +0 -0
  1240. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/s390x/lower.rs +0 -0
  1241. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/s390x/mod.rs +0 -0
  1242. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/s390x/settings.rs +0 -0
  1243. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/unwind/systemv.rs +0 -0
  1244. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/unwind/winx64.rs +0 -0
  1245. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/unwind.rs +0 -0
  1246. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/x64/encoding/evex.rs +0 -0
  1247. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/x64/encoding/mod.rs +0 -0
  1248. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/x64/encoding/rex.rs +0 -0
  1249. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/x64/encoding/vex.rs +0 -0
  1250. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/x64/inst/emit_state.rs +0 -0
  1251. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/x64/inst/unwind/systemv.rs +0 -0
  1252. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/x64/inst/unwind/winx64.rs +0 -0
  1253. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/x64/inst/unwind.rs +0 -0
  1254. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/x64/lower/isle/generated_code.rs +0 -0
  1255. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/x64/mod.rs +0 -0
  1256. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/x64/settings.rs +0 -0
  1257. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isle_prelude.rs +0 -0
  1258. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/iterators.rs +0 -0
  1259. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/legalizer/globalvalue.rs +0 -0
  1260. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/legalizer/mod.rs +0 -0
  1261. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/loop_analysis.rs +0 -0
  1262. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/machinst/buffer.rs +0 -0
  1263. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/machinst/compile.rs +0 -0
  1264. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/machinst/helpers.rs +0 -0
  1265. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/machinst/inst_common.rs +0 -0
  1266. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/machinst/pcc.rs +0 -0
  1267. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/opts/README.md +0 -0
  1268. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/opts/bitops.isle +0 -0
  1269. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/opts/cprop.isle +0 -0
  1270. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/opts/extends.isle +0 -0
  1271. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/opts/generated_code.rs +0 -0
  1272. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/opts/remat.isle +0 -0
  1273. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/opts/selects.isle +0 -0
  1274. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/opts/shifts.isle +0 -0
  1275. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/opts/spaceship.isle +0 -0
  1276. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/opts/spectre.isle +0 -0
  1277. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/opts/vector.isle +0 -0
  1278. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/opts.rs +0 -0
  1279. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/prelude.isle +0 -0
  1280. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/prelude_lower.isle +0 -0
  1281. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/prelude_opt.isle +0 -0
  1282. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/print_errors.rs +0 -0
  1283. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/result.rs +0 -0
  1284. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/souper_harvest.rs +0 -0
  1285. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/timing.rs +0 -0
  1286. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/unionfind.rs +0 -0
  1287. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/unreachable_code.rs +0 -0
  1288. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/value_label.rs +0 -0
  1289. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/verifier/mod.rs +0 -0
  1290. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/write.rs +0 -0
  1291. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/LICENSE +0 -0
  1292. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/README.md +0 -0
  1293. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/cdsl/formats.rs +0 -0
  1294. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/cdsl/instructions.rs +0 -0
  1295. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/cdsl/isa.rs +0 -0
  1296. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/cdsl/mod.rs +0 -0
  1297. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/cdsl/operands.rs +0 -0
  1298. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/cdsl/settings.rs +0 -0
  1299. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/cdsl/types.rs +0 -0
  1300. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/cdsl/typevar.rs +0 -0
  1301. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/constant_hash.rs +0 -0
  1302. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/error.rs +0 -0
  1303. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/isa/arm64.rs +0 -0
  1304. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/isa/mod.rs +0 -0
  1305. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/isa/s390x.rs +0 -0
  1306. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/shared/entities.rs +0 -0
  1307. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/shared/formats.rs +0 -0
  1308. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/shared/immediates.rs +0 -0
  1309. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/shared/instructions.rs +0 -0
  1310. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/shared/mod.rs +0 -0
  1311. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/shared/types.rs +0 -0
  1312. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/unique_table.rs +0 -0
  1313. /data/ext/cargo-vendor/{cranelift-codegen-shared-0.107.2 → cranelift-codegen-shared-0.108.1}/LICENSE +0 -0
  1314. /data/ext/cargo-vendor/{cranelift-codegen-shared-0.107.2 → cranelift-codegen-shared-0.108.1}/README.md +0 -0
  1315. /data/ext/cargo-vendor/{cranelift-codegen-shared-0.107.2 → cranelift-codegen-shared-0.108.1}/src/constant_hash.rs +0 -0
  1316. /data/ext/cargo-vendor/{cranelift-codegen-shared-0.107.2 → cranelift-codegen-shared-0.108.1}/src/constants.rs +0 -0
  1317. /data/ext/cargo-vendor/{cranelift-codegen-shared-0.107.2 → cranelift-codegen-shared-0.108.1}/src/lib.rs +0 -0
  1318. /data/ext/cargo-vendor/{cranelift-control-0.107.2 → cranelift-control-0.108.1}/LICENSE +0 -0
  1319. /data/ext/cargo-vendor/{cranelift-control-0.107.2 → cranelift-control-0.108.1}/README.md +0 -0
  1320. /data/ext/cargo-vendor/{cranelift-control-0.107.2 → cranelift-control-0.108.1}/src/chaos.rs +0 -0
  1321. /data/ext/cargo-vendor/{cranelift-control-0.107.2 → cranelift-control-0.108.1}/src/lib.rs +0 -0
  1322. /data/ext/cargo-vendor/{cranelift-control-0.107.2 → cranelift-control-0.108.1}/src/zero_sized.rs +0 -0
  1323. /data/ext/cargo-vendor/{cranelift-entity-0.107.2 → cranelift-entity-0.108.1}/LICENSE +0 -0
  1324. /data/ext/cargo-vendor/{cranelift-entity-0.107.2 → cranelift-entity-0.108.1}/README.md +0 -0
  1325. /data/ext/cargo-vendor/{cranelift-entity-0.107.2 → cranelift-entity-0.108.1}/src/boxed_slice.rs +0 -0
  1326. /data/ext/cargo-vendor/{cranelift-entity-0.107.2 → cranelift-entity-0.108.1}/src/iter.rs +0 -0
  1327. /data/ext/cargo-vendor/{cranelift-entity-0.107.2 → cranelift-entity-0.108.1}/src/keys.rs +0 -0
  1328. /data/ext/cargo-vendor/{cranelift-entity-0.107.2 → cranelift-entity-0.108.1}/src/list.rs +0 -0
  1329. /data/ext/cargo-vendor/{cranelift-entity-0.107.2 → cranelift-entity-0.108.1}/src/map.rs +0 -0
  1330. /data/ext/cargo-vendor/{cranelift-entity-0.107.2 → cranelift-entity-0.108.1}/src/packed_option.rs +0 -0
  1331. /data/ext/cargo-vendor/{cranelift-entity-0.107.2 → cranelift-entity-0.108.1}/src/primary.rs +0 -0
  1332. /data/ext/cargo-vendor/{cranelift-entity-0.107.2 → cranelift-entity-0.108.1}/src/set.rs +0 -0
  1333. /data/ext/cargo-vendor/{cranelift-entity-0.107.2 → cranelift-entity-0.108.1}/src/sparse.rs +0 -0
  1334. /data/ext/cargo-vendor/{cranelift-entity-0.107.2 → cranelift-entity-0.108.1}/src/unsigned.rs +0 -0
  1335. /data/ext/cargo-vendor/{cranelift-frontend-0.107.2 → cranelift-frontend-0.108.1}/LICENSE +0 -0
  1336. /data/ext/cargo-vendor/{cranelift-frontend-0.107.2 → cranelift-frontend-0.108.1}/README.md +0 -0
  1337. /data/ext/cargo-vendor/{cranelift-frontend-0.107.2 → cranelift-frontend-0.108.1}/src/frontend.rs +0 -0
  1338. /data/ext/cargo-vendor/{cranelift-frontend-0.107.2 → cranelift-frontend-0.108.1}/src/lib.rs +0 -0
  1339. /data/ext/cargo-vendor/{cranelift-frontend-0.107.2 → cranelift-frontend-0.108.1}/src/ssa.rs +0 -0
  1340. /data/ext/cargo-vendor/{cranelift-frontend-0.107.2 → cranelift-frontend-0.108.1}/src/variable.rs +0 -0
  1341. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/README.md +0 -0
  1342. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/build.rs +0 -0
  1343. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/fail/bad_converters.isle +0 -0
  1344. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/fail/bound_var_type_mismatch.isle +0 -0
  1345. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/fail/converter_extractor_constructor.isle +0 -0
  1346. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/fail/error1.isle +0 -0
  1347. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/fail/extra_parens.isle +0 -0
  1348. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/fail/impure_expression.isle +0 -0
  1349. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/fail/impure_rhs.isle +0 -0
  1350. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/fail/multi_internal_etor.isle +0 -0
  1351. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/fail/multi_prio.isle +0 -0
  1352. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/link/borrows.isle +0 -0
  1353. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/link/borrows_main.rs +0 -0
  1354. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/link/iflets.isle +0 -0
  1355. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/link/iflets_main.rs +0 -0
  1356. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/link/multi_constructor.isle +0 -0
  1357. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/link/multi_constructor_main.rs +0 -0
  1358. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/link/multi_extractor.isle +0 -0
  1359. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/link/multi_extractor_main.rs +0 -0
  1360. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/link/test.isle +0 -0
  1361. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/link/test_main.rs +0 -0
  1362. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/pass/bound_var.isle +0 -0
  1363. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/pass/construct_and_extract.isle +0 -0
  1364. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/pass/conversions.isle +0 -0
  1365. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/pass/conversions_extern.isle +0 -0
  1366. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/pass/let.isle +0 -0
  1367. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/pass/nodebug.isle +0 -0
  1368. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/pass/prio_trie_bug.isle +0 -0
  1369. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/pass/test2.isle +0 -0
  1370. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/pass/test3.isle +0 -0
  1371. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/pass/test4.isle +0 -0
  1372. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/pass/tutorial.isle +0 -0
  1373. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/run/iconst.isle +0 -0
  1374. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/run/iconst_main.rs +0 -0
  1375. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/run/let_shadowing.isle +0 -0
  1376. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/run/let_shadowing_main.rs +0 -0
  1377. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/src/ast.rs +0 -0
  1378. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/src/compile.rs +0 -0
  1379. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/src/error.rs +0 -0
  1380. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/src/lexer.rs +0 -0
  1381. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/src/log.rs +0 -0
  1382. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/src/overlap.rs +0 -0
  1383. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/src/parser.rs +0 -0
  1384. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/tests/run_tests.rs +0 -0
  1385. /data/ext/cargo-vendor/{cranelift-native-0.107.2 → cranelift-native-0.108.1}/LICENSE +0 -0
  1386. /data/ext/cargo-vendor/{cranelift-native-0.107.2 → cranelift-native-0.108.1}/README.md +0 -0
  1387. /data/ext/cargo-vendor/{cranelift-native-0.107.2 → cranelift-native-0.108.1}/src/lib.rs +0 -0
  1388. /data/ext/cargo-vendor/{cranelift-native-0.107.2 → cranelift-native-0.108.1}/src/riscv.rs +0 -0
  1389. /data/ext/cargo-vendor/{cranelift-wasm-0.107.2 → cranelift-wasm-0.108.1}/LICENSE +0 -0
  1390. /data/ext/cargo-vendor/{cranelift-wasm-0.107.2 → cranelift-wasm-0.108.1}/README.md +0 -0
  1391. /data/ext/cargo-vendor/{cranelift-wasm-0.107.2 → cranelift-wasm-0.108.1}/src/code_translator/bounds_checks.rs +0 -0
  1392. /data/ext/cargo-vendor/{cranelift-wasm-0.107.2 → cranelift-wasm-0.108.1}/src/environ/mod.rs +0 -0
  1393. /data/ext/cargo-vendor/{cranelift-wasm-0.107.2 → cranelift-wasm-0.108.1}/src/func_translator.rs +0 -0
  1394. /data/ext/cargo-vendor/{cranelift-wasm-0.107.2 → cranelift-wasm-0.108.1}/src/heap.rs +0 -0
  1395. /data/ext/cargo-vendor/{cranelift-wasm-0.107.2 → cranelift-wasm-0.108.1}/src/lib.rs +0 -0
  1396. /data/ext/cargo-vendor/{cranelift-wasm-0.107.2 → cranelift-wasm-0.108.1}/src/module_translator.rs +0 -0
  1397. /data/ext/cargo-vendor/{cranelift-wasm-0.107.2 → cranelift-wasm-0.108.1}/src/state.rs +0 -0
  1398. /data/ext/cargo-vendor/{cranelift-wasm-0.107.2 → cranelift-wasm-0.108.1}/src/table.rs +0 -0
  1399. /data/ext/cargo-vendor/{cranelift-wasm-0.107.2 → cranelift-wasm-0.108.1}/src/translation_utils.rs +0 -0
  1400. /data/ext/cargo-vendor/{deterministic-wasi-ctx-0.1.21 → deterministic-wasi-ctx-0.1.22}/README.md +0 -0
  1401. /data/ext/cargo-vendor/{deterministic-wasi-ctx-0.1.21 → deterministic-wasi-ctx-0.1.22}/src/clocks.rs +0 -0
  1402. /data/ext/cargo-vendor/{deterministic-wasi-ctx-0.1.21 → deterministic-wasi-ctx-0.1.22}/src/lib.rs +0 -0
  1403. /data/ext/cargo-vendor/{deterministic-wasi-ctx-0.1.21 → deterministic-wasi-ctx-0.1.22}/src/noop_scheduler.rs +0 -0
  1404. /data/ext/cargo-vendor/{deterministic-wasi-ctx-0.1.21 → deterministic-wasi-ctx-0.1.22}/tests/clocks.rs +0 -0
  1405. /data/ext/cargo-vendor/{deterministic-wasi-ctx-0.1.21 → deterministic-wasi-ctx-0.1.22}/tests/common/mod.rs +0 -0
  1406. /data/ext/cargo-vendor/{deterministic-wasi-ctx-0.1.21 → deterministic-wasi-ctx-0.1.22}/tests/random.rs +0 -0
  1407. /data/ext/cargo-vendor/{deterministic-wasi-ctx-0.1.21 → deterministic-wasi-ctx-0.1.22}/tests/scheduler.rs +0 -0
  1408. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/LICENSE-APACHE +0 -0
  1409. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/LICENSE-MIT +0 -0
  1410. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/bin/release.sh +0 -0
  1411. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/build/features.rs +0 -0
  1412. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/build/version.rs +0 -0
  1413. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/readme.md +0 -0
  1414. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/hidden.rs +0 -0
  1415. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/lib.rs +0 -0
  1416. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/macros.rs +0 -0
  1417. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/memory.rs +0 -0
  1418. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/ruby_abi_version.rs +0 -0
  1419. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/special_consts.rs +0 -0
  1420. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/stable_api/compiled.c +0 -0
  1421. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/stable_api/compiled.rs +0 -0
  1422. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/stable_api/ruby_2_6.rs +0 -0
  1423. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/stable_api/ruby_2_7.rs +0 -0
  1424. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/stable_api/ruby_3_0.rs +0 -0
  1425. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/stable_api/ruby_3_1.rs +0 -0
  1426. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/stable_api/ruby_3_2.rs +0 -0
  1427. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/stable_api/ruby_3_3.rs +0 -0
  1428. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/stable_api.rs +0 -0
  1429. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/symbol.rs +0 -0
  1430. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/utils.rs +0 -0
  1431. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/value_type.rs +0 -0
  1432. /data/ext/cargo-vendor/{rb-sys-build-0.9.97 → rb-sys-build-0.9.100}/LICENSE-APACHE +0 -0
  1433. /data/ext/cargo-vendor/{rb-sys-build-0.9.97 → rb-sys-build-0.9.100}/LICENSE-MIT +0 -0
  1434. /data/ext/cargo-vendor/{rb-sys-build-0.9.97 → rb-sys-build-0.9.100}/src/bindings/sanitizer.rs +0 -0
  1435. /data/ext/cargo-vendor/{rb-sys-build-0.9.97 → rb-sys-build-0.9.100}/src/bindings/wrapper.h +0 -0
  1436. /data/ext/cargo-vendor/{rb-sys-build-0.9.97 → rb-sys-build-0.9.100}/src/lib.rs +0 -0
  1437. /data/ext/cargo-vendor/{rb-sys-build-0.9.97 → rb-sys-build-0.9.100}/src/rb_config/flags.rs +0 -0
  1438. /data/ext/cargo-vendor/{rb-sys-build-0.9.97 → rb-sys-build-0.9.100}/src/rb_config/library.rs +0 -0
  1439. /data/ext/cargo-vendor/{rb-sys-build-0.9.97 → rb-sys-build-0.9.100}/src/rb_config/search_path.rs +0 -0
  1440. /data/ext/cargo-vendor/{rb-sys-build-0.9.97 → rb-sys-build-0.9.100}/src/rb_config.rs +0 -0
  1441. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/LICENSE +0 -0
  1442. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/README.md +0 -0
  1443. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/clocks.rs +0 -0
  1444. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/ctx.rs +0 -0
  1445. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/dir.rs +0 -0
  1446. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/error.rs +0 -0
  1447. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/file.rs +0 -0
  1448. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/lib.rs +0 -0
  1449. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/pipe.rs +0 -0
  1450. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/random.rs +0 -0
  1451. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/sched/subscription.rs +0 -0
  1452. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/sched.rs +0 -0
  1453. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/snapshots/mod.rs +0 -0
  1454. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/snapshots/preview_0.rs +0 -0
  1455. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/snapshots/preview_1/error.rs +0 -0
  1456. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/snapshots/preview_1.rs +0 -0
  1457. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/string_array.rs +0 -0
  1458. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/sync/clocks.rs +0 -0
  1459. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/sync/dir.rs +0 -0
  1460. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/sync/file.rs +0 -0
  1461. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/sync/mod.rs +0 -0
  1462. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/sync/net.rs +0 -0
  1463. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/sync/sched/unix.rs +0 -0
  1464. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/sync/sched/windows.rs +0 -0
  1465. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/sync/sched.rs +0 -0
  1466. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/sync/stdio.rs +0 -0
  1467. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/table.rs +0 -0
  1468. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/tokio/dir.rs +0 -0
  1469. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/tokio/file.rs +0 -0
  1470. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/tokio/mod.rs +0 -0
  1471. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/tokio/net.rs +0 -0
  1472. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/tokio/sched/unix.rs +0 -0
  1473. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/tokio/sched/windows.rs +0 -0
  1474. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/tokio/sched.rs +0 -0
  1475. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/tokio/stdio.rs +0 -0
  1476. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/witx/preview0/typenames.witx +0 -0
  1477. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/witx/preview0/wasi_unstable.witx +0 -0
  1478. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/witx/preview1/typenames.witx +0 -0
  1479. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/witx/preview1/wasi_snapshot_preview1.witx +0 -0
  1480. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/LICENSE +0 -0
  1481. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/README.md +0 -0
  1482. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/component/aliases.rs +0 -0
  1483. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/component/builder.rs +0 -0
  1484. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/component/canonicals.rs +0 -0
  1485. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/component/components.rs +0 -0
  1486. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/component/exports.rs +0 -0
  1487. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/component/imports.rs +0 -0
  1488. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/component/instances.rs +0 -0
  1489. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/component/modules.rs +0 -0
  1490. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/component/names.rs +0 -0
  1491. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/component/start.rs +0 -0
  1492. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/component/types.rs +0 -0
  1493. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/component.rs +0 -0
  1494. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/core/custom.rs +0 -0
  1495. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/core/dump.rs +0 -0
  1496. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/core/exports.rs +0 -0
  1497. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/core/functions.rs +0 -0
  1498. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/core/linking.rs +0 -0
  1499. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/core/names.rs +0 -0
  1500. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/core/producers.rs +0 -0
  1501. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/core/start.rs +0 -0
  1502. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/core/tags.rs +0 -0
  1503. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/core.rs +0 -0
  1504. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/lib.rs +0 -0
  1505. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/raw.rs +0 -0
  1506. /data/ext/cargo-vendor/{wasmparser-0.202.0 → wasmparser-0.207.0}/README.md +0 -0
  1507. /data/ext/cargo-vendor/{wasmparser-0.202.0 → wasmparser-0.207.0}/benches/benchmark.rs +0 -0
  1508. /data/ext/cargo-vendor/{wasmparser-0.202.0 → wasmparser-0.207.0}/examples/simple.rs +0 -0
  1509. /data/ext/cargo-vendor/{wasmparser-0.202.0 → wasmparser-0.207.0}/src/readers/component/aliases.rs +0 -0
  1510. /data/ext/cargo-vendor/{wasmparser-0.202.0 → wasmparser-0.207.0}/src/readers/component/exports.rs +0 -0
  1511. /data/ext/cargo-vendor/{wasmparser-0.202.0 → wasmparser-0.207.0}/src/readers/component/imports.rs +0 -0
  1512. /data/ext/cargo-vendor/{wasmparser-0.202.0 → wasmparser-0.207.0}/src/readers/component.rs +0 -0
  1513. /data/ext/cargo-vendor/{wasmparser-0.202.0 → wasmparser-0.207.0}/src/readers/core/branch_hinting.rs +0 -0
  1514. /data/ext/cargo-vendor/{wasmparser-0.202.0 → wasmparser-0.207.0}/src/readers/core/exports.rs +0 -0
  1515. /data/ext/cargo-vendor/{wasmparser-0.202.0 → wasmparser-0.207.0}/src/readers/core/functions.rs +0 -0
  1516. /data/ext/cargo-vendor/{wasmparser-0.202.0 → wasmparser-0.207.0}/src/readers/core/imports.rs +0 -0
  1517. /data/ext/cargo-vendor/{wasmparser-0.202.0 → wasmparser-0.207.0}/src/readers/core/init.rs +0 -0
  1518. /data/ext/cargo-vendor/{wasmparser-0.202.0 → wasmparser-0.207.0}/src/readers/core/producers.rs +0 -0
  1519. /data/ext/cargo-vendor/{wasmparser-0.202.0 → wasmparser-0.207.0}/src/readers/core/tags.rs +0 -0
  1520. /data/ext/cargo-vendor/{wasmparser-0.202.0 → wasmparser-0.207.0}/tests/big-module.rs +0 -0
  1521. /data/ext/cargo-vendor/{wasmparser-0.202.0 → wasmprinter-0.207.0}/LICENSE +0 -0
  1522. /data/ext/cargo-vendor/{wasmprinter-0.202.0 → wasmprinter-0.207.0}/README.md +0 -0
  1523. /data/ext/cargo-vendor/{wasmprinter-0.202.0 → wasmtime-21.0.1}/LICENSE +0 -0
  1524. /data/ext/cargo-vendor/{wasmtime-20.0.2 → wasmtime-21.0.1}/README.md +0 -0
  1525. /data/ext/cargo-vendor/{wasmtime-runtime-20.0.2/proptest-regressions → wasmtime-21.0.1/proptest-regressions/runtime/vm}/instance/allocator/pooling/memory_pool.txt +0 -0
  1526. /data/ext/cargo-vendor/{wasmtime-20.0.2 → wasmtime-21.0.1}/src/runtime/gc/disabled/i31.rs +0 -0
  1527. /data/ext/cargo-vendor/{wasmtime-20.0.2 → wasmtime-21.0.1}/src/runtime/gc/disabled.rs +0 -0
  1528. /data/ext/cargo-vendor/{wasmtime-20.0.2 → wasmtime-21.0.1}/src/runtime/gc/enabled.rs +0 -0
  1529. /data/ext/cargo-vendor/{wasmtime-20.0.2 → wasmtime-21.0.1}/src/runtime/uninhabited.rs +0 -0
  1530. /data/ext/cargo-vendor/{wasmtime-runtime-20.0.2/src → wasmtime-21.0.1/src/runtime/vm}/arch/mod.rs +0 -0
  1531. /data/ext/cargo-vendor/{wasmtime-runtime-20.0.2/src → wasmtime-21.0.1/src/runtime/vm}/arch/riscv64.rs +0 -0
  1532. /data/ext/cargo-vendor/{wasmtime-runtime-20.0.2/src → wasmtime-21.0.1/src/runtime/vm}/arch/s390x.S +0 -0
  1533. /data/ext/cargo-vendor/{wasmtime-runtime-20.0.2/src → wasmtime-21.0.1/src/runtime/vm}/arch/s390x.rs +0 -0
  1534. /data/ext/cargo-vendor/{wasmtime-runtime-20.0.2/src → wasmtime-21.0.1/src/runtime/vm}/helpers.c +0 -0
  1535. /data/ext/cargo-vendor/{wasmtime-runtime-20.0.2/src → wasmtime-21.0.1/src/runtime/vm}/mpk/disabled.rs +0 -0
  1536. /data/ext/cargo-vendor/{wasmtime-runtime-20.0.2/src → wasmtime-21.0.1/src/runtime/vm}/sys/custom/unwind.rs +0 -0
  1537. /data/ext/cargo-vendor/{wasmtime-runtime-20.0.2/src → wasmtime-21.0.1/src/runtime/vm}/sys/miri/unwind.rs +0 -0
  1538. /data/ext/cargo-vendor/{wasmtime-runtime-20.0.2/src → wasmtime-21.0.1/src/runtime/vm}/sys/miri/vm.rs +0 -0
  1539. /data/ext/cargo-vendor/{wasmtime-runtime-20.0.2/src → wasmtime-21.0.1/src/runtime/vm}/sys/unix/macos_traphandlers.rs +0 -0
  1540. /data/ext/cargo-vendor/{wasmtime-runtime-20.0.2/src → wasmtime-21.0.1/src/runtime/vm}/sys/windows/unwind.rs +0 -0
  1541. /data/ext/cargo-vendor/{wasmtime-runtime-20.0.2/src → wasmtime-21.0.1/src/runtime/vm}/sys/windows/vm.rs +0 -0
  1542. /data/ext/cargo-vendor/{wasmtime-runtime-20.0.2/src → wasmtime-21.0.1/src/runtime/vm}/threads/mod.rs +0 -0
  1543. /data/ext/cargo-vendor/{wasmtime-20.0.2 → wasmtime-cache-21.0.1}/LICENSE +0 -0
  1544. /data/ext/cargo-vendor/{wasmtime-cache-20.0.2 → wasmtime-cache-21.0.1}/build.rs +0 -0
  1545. /data/ext/cargo-vendor/{wasmtime-cache-20.0.2 → wasmtime-cache-21.0.1}/src/config/tests.rs +0 -0
  1546. /data/ext/cargo-vendor/{wasmtime-cache-20.0.2 → wasmtime-cache-21.0.1}/src/config.rs +0 -0
  1547. /data/ext/cargo-vendor/{wasmtime-cache-20.0.2 → wasmtime-cache-21.0.1}/src/tests.rs +0 -0
  1548. /data/ext/cargo-vendor/{wasmtime-cache-20.0.2 → wasmtime-cache-21.0.1}/src/worker/tests/system_time_stub.rs +0 -0
  1549. /data/ext/cargo-vendor/{wasmtime-cache-20.0.2 → wasmtime-cache-21.0.1}/src/worker/tests.rs +0 -0
  1550. /data/ext/cargo-vendor/{wasmtime-cache-20.0.2 → wasmtime-cache-21.0.1}/src/worker.rs +0 -0
  1551. /data/ext/cargo-vendor/{wasmtime-cache-20.0.2 → wasmtime-cache-21.0.1}/tests/cache_write_default_config.rs +0 -0
  1552. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/build.rs +0 -0
  1553. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/src/lib.rs +0 -0
  1554. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/char.wit +0 -0
  1555. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/conventions.wit +0 -0
  1556. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/dead-code.wit +0 -0
  1557. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/direct-import.wit +0 -0
  1558. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/empty.wit +0 -0
  1559. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/flags.wit +0 -0
  1560. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/floats.wit +0 -0
  1561. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/function-new.wit +0 -0
  1562. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/integers.wit +0 -0
  1563. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/lists.wit +0 -0
  1564. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/many-arguments.wit +0 -0
  1565. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/multi-return.wit +0 -0
  1566. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/multiversion/deps/v1/root.wit +0 -0
  1567. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/multiversion/deps/v2/root.wit +0 -0
  1568. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/multiversion/root.wit +0 -0
  1569. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/records.wit +0 -0
  1570. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/rename.wit +0 -0
  1571. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/resources-export.wit +0 -0
  1572. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/resources-import.wit +0 -0
  1573. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/share-types.wit +0 -0
  1574. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/simple-functions.wit +0 -0
  1575. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/simple-lists.wit +0 -0
  1576. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/simple-wasi.wit +0 -0
  1577. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/small-anonymous.wit +0 -0
  1578. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/smoke-default.wit +0 -0
  1579. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/smoke-export.wit +0 -0
  1580. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/smoke.wit +0 -0
  1581. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/strings.wit +0 -0
  1582. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/unversioned-foo.wit +0 -0
  1583. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/use-paths.wit +0 -0
  1584. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/variants.wit +0 -0
  1585. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/wat.wit +0 -0
  1586. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/worlds-with-types.wit +0 -0
  1587. /data/ext/cargo-vendor/{wasmtime-cache-20.0.2 → wasmtime-cranelift-21.0.1}/LICENSE +0 -0
  1588. /data/ext/cargo-vendor/{wasmtime-cranelift-20.0.2 → wasmtime-cranelift-21.0.1}/SECURITY.md +0 -0
  1589. /data/ext/cargo-vendor/{wasmtime-cranelift-20.0.2 → wasmtime-cranelift-21.0.1}/src/builder.rs +0 -0
  1590. /data/ext/cargo-vendor/{wasmtime-cranelift-20.0.2 → wasmtime-cranelift-21.0.1}/src/compiled_function.rs +0 -0
  1591. /data/ext/cargo-vendor/{wasmtime-cranelift-20.0.2 → wasmtime-cranelift-21.0.1}/src/debug/transform/address_transform.rs +0 -0
  1592. /data/ext/cargo-vendor/{wasmtime-cranelift-20.0.2 → wasmtime-cranelift-21.0.1}/src/debug/transform/range_info_builder.rs +0 -0
  1593. /data/ext/cargo-vendor/{wasmtime-cranelift-20.0.2 → wasmtime-cranelift-21.0.1}/src/debug/transform/refs.rs +0 -0
  1594. /data/ext/cargo-vendor/{wasmtime-cranelift-20.0.2 → wasmtime-cranelift-21.0.1}/src/debug/transform/simulate.rs +0 -0
  1595. /data/ext/cargo-vendor/{wasmtime-cranelift-20.0.2 → wasmtime-cranelift-21.0.1}/src/gc/disabled.rs +0 -0
  1596. /data/ext/cargo-vendor/{wasmtime-cranelift-20.0.2 → wasmtime-cranelift-21.0.1}/src/isa_builder.rs +0 -0
  1597. /data/ext/cargo-vendor/{wasmtime-cranelift-20.0.2 → wasmtime-cranelift-21.0.1}/src/obj.rs +0 -0
  1598. /data/ext/cargo-vendor/{wasmtime-cranelift-20.0.2 → wasmtime-environ-21.0.1}/LICENSE +0 -0
  1599. /data/ext/cargo-vendor/{wasmtime-environ-20.0.2 → wasmtime-environ-21.0.1}/src/address_map.rs +0 -0
  1600. /data/ext/cargo-vendor/{wasmtime-environ-20.0.2 → wasmtime-environ-21.0.1}/src/builtin.rs +0 -0
  1601. /data/ext/cargo-vendor/{wasmtime-environ-20.0.2 → wasmtime-environ-21.0.1}/src/component/artifacts.rs +0 -0
  1602. /data/ext/cargo-vendor/{wasmtime-environ-20.0.2 → wasmtime-environ-21.0.1}/src/component/translate/inline.rs +0 -0
  1603. /data/ext/cargo-vendor/{wasmtime-environ-20.0.2 → wasmtime-environ-21.0.1}/src/component/vmcomponent_offsets.rs +0 -0
  1604. /data/ext/cargo-vendor/{wasmtime-environ-20.0.2 → wasmtime-environ-21.0.1}/src/gc.rs +0 -0
  1605. /data/ext/cargo-vendor/{wasmtime-environ-20.0.2 → wasmtime-environ-21.0.1}/src/obj.rs +0 -0
  1606. /data/ext/cargo-vendor/{wasmtime-environ-20.0.2 → wasmtime-environ-21.0.1}/src/ref_bits.rs +0 -0
  1607. /data/ext/cargo-vendor/{wasmtime-environ-20.0.2 → wasmtime-fiber-21.0.1}/LICENSE +0 -0
  1608. /data/ext/cargo-vendor/{wasmtime-fiber-20.0.2 → wasmtime-fiber-21.0.1}/src/unix/aarch64.rs +0 -0
  1609. /data/ext/cargo-vendor/{wasmtime-fiber-20.0.2 → wasmtime-fiber-21.0.1}/src/unix/arm.rs +0 -0
  1610. /data/ext/cargo-vendor/{wasmtime-fiber-20.0.2 → wasmtime-fiber-21.0.1}/src/unix/riscv64.rs +0 -0
  1611. /data/ext/cargo-vendor/{wasmtime-fiber-20.0.2 → wasmtime-fiber-21.0.1}/src/unix/s390x.S +0 -0
  1612. /data/ext/cargo-vendor/{wasmtime-fiber-20.0.2 → wasmtime-fiber-21.0.1}/src/unix/x86.rs +0 -0
  1613. /data/ext/cargo-vendor/{wasmtime-fiber-20.0.2 → wasmtime-fiber-21.0.1}/src/unix/x86_64.rs +0 -0
  1614. /data/ext/cargo-vendor/{wasmtime-fiber-20.0.2 → wasmtime-fiber-21.0.1}/src/windows.c +0 -0
  1615. /data/ext/cargo-vendor/{wasmtime-jit-debug-20.0.2 → wasmtime-jit-debug-21.0.1}/README.md +0 -0
  1616. /data/ext/cargo-vendor/{wasmtime-jit-debug-20.0.2 → wasmtime-jit-debug-21.0.1}/src/gdb_jit_int.rs +0 -0
  1617. /data/ext/cargo-vendor/{wasmtime-jit-debug-20.0.2 → wasmtime-jit-debug-21.0.1}/src/lib.rs +0 -0
  1618. /data/ext/cargo-vendor/{wasmtime-jit-debug-20.0.2 → wasmtime-jit-debug-21.0.1}/src/perf_jitdump.rs +0 -0
  1619. /data/ext/cargo-vendor/{wasmtime-fiber-20.0.2 → wasmtime-types-21.0.1}/LICENSE +0 -0
  1620. /data/ext/cargo-vendor/{wasmtime-versioned-export-macros-20.0.2 → wasmtime-versioned-export-macros-21.0.1}/src/lib.rs +0 -0
  1621. /data/ext/cargo-vendor/{wasmtime-runtime-20.0.2 → wasmtime-wasi-21.0.1}/LICENSE +0 -0
  1622. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/README.md +0 -0
  1623. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/clocks/host.rs +0 -0
  1624. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/clocks.rs +0 -0
  1625. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/error.rs +0 -0
  1626. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/host/clocks.rs +0 -0
  1627. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/host/env.rs +0 -0
  1628. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/host/exit.rs +0 -0
  1629. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/host/filesystem/sync.rs +0 -0
  1630. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/host/filesystem.rs +0 -0
  1631. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/host/instance_network.rs +0 -0
  1632. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/host/io.rs +0 -0
  1633. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/host/mod.rs +0 -0
  1634. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/host/network.rs +0 -0
  1635. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/host/random.rs +0 -0
  1636. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/host/tcp.rs +0 -0
  1637. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/host/tcp_create_socket.rs +0 -0
  1638. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/host/udp.rs +0 -0
  1639. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/host/udp_create_socket.rs +0 -0
  1640. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/ip_name_lookup.rs +0 -0
  1641. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/network.rs +0 -0
  1642. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/pipe.rs +0 -0
  1643. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/poll.rs +0 -0
  1644. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/random.rs +0 -0
  1645. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/runtime.rs +0 -0
  1646. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/stdio/worker_thread_stdin.rs +0 -0
  1647. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/stdio.rs +0 -0
  1648. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/stream.rs +0 -0
  1649. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/tcp.rs +0 -0
  1650. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/udp.rs +0 -0
  1651. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/write_stream.rs +0 -0
  1652. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/tests/process_stdin.rs +0 -0
  1653. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/command-extended.wit +0 -0
  1654. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/cli/command.wit +0 -0
  1655. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/cli/environment.wit +0 -0
  1656. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/cli/exit.wit +0 -0
  1657. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/cli/imports.wit +0 -0
  1658. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/cli/run.wit +0 -0
  1659. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/cli/stdio.wit +0 -0
  1660. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/cli/terminal.wit +0 -0
  1661. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/clocks/monotonic-clock.wit +0 -0
  1662. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/clocks/wall-clock.wit +0 -0
  1663. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/clocks/world.wit +0 -0
  1664. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/filesystem/preopens.wit +0 -0
  1665. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/filesystem/types.wit +0 -0
  1666. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/filesystem/world.wit +0 -0
  1667. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/http/handler.wit +0 -0
  1668. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/http/proxy.wit +0 -0
  1669. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/http/types.wit +0 -0
  1670. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/io/error.wit +0 -0
  1671. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/io/poll.wit +0 -0
  1672. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/io/streams.wit +0 -0
  1673. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/io/world.wit +0 -0
  1674. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/random/insecure-seed.wit +0 -0
  1675. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/random/insecure.wit +0 -0
  1676. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/random/random.wit +0 -0
  1677. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/random/world.wit +0 -0
  1678. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/sockets/instance-network.wit +0 -0
  1679. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/sockets/ip-name-lookup.wit +0 -0
  1680. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/sockets/network.wit +0 -0
  1681. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/sockets/tcp-create-socket.wit +0 -0
  1682. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/sockets/tcp.wit +0 -0
  1683. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/sockets/udp-create-socket.wit +0 -0
  1684. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/sockets/udp.wit +0 -0
  1685. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/sockets/world.wit +0 -0
  1686. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/test.wit +0 -0
  1687. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/witx/preview0/typenames.witx +0 -0
  1688. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/witx/preview0/wasi_unstable.witx +0 -0
  1689. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/witx/preview1/typenames.witx +0 -0
  1690. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/witx/preview1/wasi_snapshot_preview1.witx +0 -0
  1691. /data/ext/cargo-vendor/{wasmtime-winch-20.0.2 → wasmtime-winch-21.0.1}/LICENSE +0 -0
  1692. /data/ext/cargo-vendor/{wasmtime-winch-20.0.2 → wasmtime-winch-21.0.1}/src/builder.rs +0 -0
  1693. /data/ext/cargo-vendor/{wasmtime-winch-20.0.2 → wasmtime-winch-21.0.1}/src/lib.rs +0 -0
  1694. /data/ext/cargo-vendor/{wasmtime-wit-bindgen-20.0.2 → wasmtime-wit-bindgen-21.0.1}/src/source.rs +0 -0
  1695. /data/ext/cargo-vendor/{wasmtime-wit-bindgen-20.0.2 → wasmtime-wit-bindgen-21.0.1}/src/types.rs +0 -0
  1696. /data/ext/cargo-vendor/{wasmtime-types-20.0.2 → wiggle-21.0.1}/LICENSE +0 -0
  1697. /data/ext/cargo-vendor/{wiggle-20.0.2 → wiggle-21.0.1}/README.md +0 -0
  1698. /data/ext/cargo-vendor/{wiggle-20.0.2 → wiggle-21.0.1}/src/borrow.rs +0 -0
  1699. /data/ext/cargo-vendor/{wiggle-20.0.2 → wiggle-21.0.1}/src/error.rs +0 -0
  1700. /data/ext/cargo-vendor/{wiggle-20.0.2 → wiggle-21.0.1}/src/guest_type.rs +0 -0
  1701. /data/ext/cargo-vendor/{wiggle-20.0.2 → wiggle-21.0.1}/src/lib.rs +0 -0
  1702. /data/ext/cargo-vendor/{wiggle-20.0.2 → wiggle-21.0.1}/src/region.rs +0 -0
  1703. /data/ext/cargo-vendor/{wiggle-20.0.2 → wiggle-21.0.1}/src/wasmtime.rs +0 -0
  1704. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wiggle-generate-21.0.1}/LICENSE +0 -0
  1705. /data/ext/cargo-vendor/{wiggle-generate-20.0.2 → wiggle-generate-21.0.1}/README.md +0 -0
  1706. /data/ext/cargo-vendor/{wiggle-generate-20.0.2 → wiggle-generate-21.0.1}/src/codegen_settings.rs +0 -0
  1707. /data/ext/cargo-vendor/{wiggle-generate-20.0.2 → wiggle-generate-21.0.1}/src/config.rs +0 -0
  1708. /data/ext/cargo-vendor/{wiggle-generate-20.0.2 → wiggle-generate-21.0.1}/src/funcs.rs +0 -0
  1709. /data/ext/cargo-vendor/{wiggle-generate-20.0.2 → wiggle-generate-21.0.1}/src/lib.rs +0 -0
  1710. /data/ext/cargo-vendor/{wiggle-generate-20.0.2 → wiggle-generate-21.0.1}/src/lifetimes.rs +0 -0
  1711. /data/ext/cargo-vendor/{wiggle-generate-20.0.2 → wiggle-generate-21.0.1}/src/module_trait.rs +0 -0
  1712. /data/ext/cargo-vendor/{wiggle-generate-20.0.2 → wiggle-generate-21.0.1}/src/names.rs +0 -0
  1713. /data/ext/cargo-vendor/{wiggle-generate-20.0.2 → wiggle-generate-21.0.1}/src/types/error.rs +0 -0
  1714. /data/ext/cargo-vendor/{wiggle-generate-20.0.2 → wiggle-generate-21.0.1}/src/types/flags.rs +0 -0
  1715. /data/ext/cargo-vendor/{wiggle-generate-20.0.2 → wiggle-generate-21.0.1}/src/types/handle.rs +0 -0
  1716. /data/ext/cargo-vendor/{wiggle-generate-20.0.2 → wiggle-generate-21.0.1}/src/types/mod.rs +0 -0
  1717. /data/ext/cargo-vendor/{wiggle-generate-20.0.2 → wiggle-generate-21.0.1}/src/types/record.rs +0 -0
  1718. /data/ext/cargo-vendor/{wiggle-generate-20.0.2 → wiggle-generate-21.0.1}/src/types/variant.rs +0 -0
  1719. /data/ext/cargo-vendor/{wiggle-generate-20.0.2 → wiggle-generate-21.0.1}/src/wasmtime.rs +0 -0
  1720. /data/ext/cargo-vendor/{wiggle-20.0.2 → wiggle-macro-21.0.1}/LICENSE +0 -0
  1721. /data/ext/cargo-vendor/{wiggle-macro-20.0.2 → wiggle-macro-21.0.1}/src/lib.rs +0 -0
  1722. /data/ext/cargo-vendor/{winch-codegen-0.18.2 → winch-codegen-0.19.1}/LICENSE +0 -0
  1723. /data/ext/cargo-vendor/{winch-codegen-0.18.2 → winch-codegen-0.19.1}/build.rs +0 -0
  1724. /data/ext/cargo-vendor/{winch-codegen-0.18.2 → winch-codegen-0.19.1}/src/abi/local.rs +0 -0
  1725. /data/ext/cargo-vendor/{winch-codegen-0.18.2 → winch-codegen-0.19.1}/src/abi/mod.rs +0 -0
  1726. /data/ext/cargo-vendor/{winch-codegen-0.18.2 → winch-codegen-0.19.1}/src/codegen/bounds.rs +0 -0
  1727. /data/ext/cargo-vendor/{winch-codegen-0.18.2 → winch-codegen-0.19.1}/src/codegen/builtin.rs +0 -0
  1728. /data/ext/cargo-vendor/{winch-codegen-0.18.2 → winch-codegen-0.19.1}/src/codegen/call.rs +0 -0
  1729. /data/ext/cargo-vendor/{winch-codegen-0.18.2 → winch-codegen-0.19.1}/src/codegen/control.rs +0 -0
  1730. /data/ext/cargo-vendor/{winch-codegen-0.18.2 → winch-codegen-0.19.1}/src/frame/mod.rs +0 -0
  1731. /data/ext/cargo-vendor/{winch-codegen-0.18.2 → winch-codegen-0.19.1}/src/isa/mod.rs +0 -0
  1732. /data/ext/cargo-vendor/{winch-codegen-0.18.2 → winch-codegen-0.19.1}/src/isa/x64/abi.rs +0 -0
  1733. /data/ext/cargo-vendor/{winch-codegen-0.18.2 → winch-codegen-0.19.1}/src/isa/x64/address.rs +0 -0
  1734. /data/ext/cargo-vendor/{winch-codegen-0.18.2 → winch-codegen-0.19.1}/src/isa/x64/mod.rs +0 -0
  1735. /data/ext/cargo-vendor/{winch-codegen-0.18.2 → winch-codegen-0.19.1}/src/isa/x64/regs.rs +0 -0
  1736. /data/ext/cargo-vendor/{winch-codegen-0.18.2 → winch-codegen-0.19.1}/src/lib.rs +0 -0
  1737. /data/ext/cargo-vendor/{winch-codegen-0.18.2 → winch-codegen-0.19.1}/src/stack.rs +0 -0
  1738. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/README.md +0 -0
  1739. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/src/abi.rs +0 -0
  1740. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/src/ast/lex.rs +0 -0
  1741. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/src/ast/toposort.rs +0 -0
  1742. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/src/ast.rs +0 -0
  1743. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/src/docs.rs +0 -0
  1744. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/src/serde_.rs +0 -0
  1745. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/src/sizealign.rs +0 -0
  1746. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/all.rs +0 -0
  1747. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/comments.wit +0 -0
  1748. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/comments.wit.json +0 -0
  1749. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/complex-include/deps/bar/root.wit +0 -0
  1750. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/complex-include/deps/baz/root.wit +0 -0
  1751. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/complex-include/root.wit +0 -0
  1752. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/complex-include.wit.json +0 -0
  1753. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/cross-package-resource/deps/foo/foo.wit +0 -0
  1754. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/cross-package-resource/foo.wit +0 -0
  1755. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/cross-package-resource.wit.json +0 -0
  1756. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/diamond1/deps/dep1/types.wit +0 -0
  1757. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/diamond1/deps/dep2/types.wit +0 -0
  1758. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/diamond1/join.wit +0 -0
  1759. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/diamond1.wit.json +0 -0
  1760. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/disambiguate-diamond/shared1.wit +0 -0
  1761. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/disambiguate-diamond/shared2.wit +0 -0
  1762. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/disambiguate-diamond/world.wit +0 -0
  1763. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/disambiguate-diamond.wit.json +0 -0
  1764. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/empty.wit +0 -0
  1765. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/empty.wit.json +0 -0
  1766. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps/deps/another-pkg/other-doc.wit +0 -0
  1767. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps/deps/corp/saas.wit +0 -0
  1768. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps/deps/different-pkg/the-doc.wit +0 -0
  1769. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps/deps/foreign-pkg/the-doc.wit +0 -0
  1770. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps/deps/some-pkg/some-doc.wit +0 -0
  1771. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps/deps/wasi/clocks.wit +0 -0
  1772. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps/deps/wasi/filesystem.wit +0 -0
  1773. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps/root.wit +0 -0
  1774. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps-union/deps/another-pkg/other-doc.wit +0 -0
  1775. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps-union/deps/corp/saas.wit +0 -0
  1776. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps-union/deps/different-pkg/the-doc.wit +0 -0
  1777. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps-union/deps/foreign-pkg/the-doc.wit +0 -0
  1778. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps-union/deps/some-pkg/some-doc.wit +0 -0
  1779. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps-union/deps/wasi/clocks.wit +0 -0
  1780. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps-union/deps/wasi/filesystem.wit +0 -0
  1781. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps-union/deps/wasi/wasi.wit +0 -0
  1782. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps-union/root.wit +0 -0
  1783. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps-union.wit.json +0 -0
  1784. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps.wit.json +0 -0
  1785. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/functions.wit +0 -0
  1786. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/functions.wit.json +0 -0
  1787. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/ignore-files-deps/deps/bar/types.wit +0 -0
  1788. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/ignore-files-deps/deps/ignore-me.txt +0 -0
  1789. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/ignore-files-deps/world.wit +0 -0
  1790. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/ignore-files-deps.wit.json +0 -0
  1791. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/import-export-overlap1.wit +0 -0
  1792. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/import-export-overlap1.wit.json +0 -0
  1793. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/import-export-overlap2.wit +0 -0
  1794. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/import-export-overlap2.wit.json +0 -0
  1795. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/include-reps.wit +0 -0
  1796. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/include-reps.wit.json +0 -0
  1797. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/kebab-name-include-with.wit +0 -0
  1798. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/kebab-name-include-with.wit.json +0 -0
  1799. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/kinds-of-deps/a.wit +0 -0
  1800. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/kinds-of-deps/deps/b/root.wit +0 -0
  1801. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/kinds-of-deps/deps/c.wit +0 -0
  1802. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/kinds-of-deps/deps/d.wat +0 -0
  1803. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/kinds-of-deps/deps/e.wasm +0 -0
  1804. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/kinds-of-deps.wit.json +0 -0
  1805. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/many-names/a.wit +0 -0
  1806. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/many-names/b.wit +0 -0
  1807. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/many-names.wit.json +0 -0
  1808. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/multi-file/bar.wit +0 -0
  1809. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/multi-file/cycle-a.wit +0 -0
  1810. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/multi-file/cycle-b.wit +0 -0
  1811. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/multi-file/foo.wit +0 -0
  1812. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/multi-file.wit.json +0 -0
  1813. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/name-both-resource-and-type/deps/dep/foo.wit +0 -0
  1814. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/name-both-resource-and-type/foo.wit +0 -0
  1815. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/name-both-resource-and-type.wit.json +0 -0
  1816. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/package-syntax1.wit +0 -0
  1817. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/package-syntax1.wit.json +0 -0
  1818. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/package-syntax3.wit +0 -0
  1819. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/package-syntax3.wit.json +0 -0
  1820. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/package-syntax4.wit +0 -0
  1821. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/package-syntax4.wit.json +0 -0
  1822. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/alias-no-type.wit +0 -0
  1823. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/alias-no-type.wit.result +0 -0
  1824. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/async.wit.result +0 -0
  1825. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/async1.wit.result +0 -0
  1826. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-function.wit +0 -0
  1827. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-function.wit.result +0 -0
  1828. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-function2.wit +0 -0
  1829. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-function2.wit.result +0 -0
  1830. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-include1.wit +0 -0
  1831. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-include1.wit.result +0 -0
  1832. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-include2.wit +0 -0
  1833. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-include2.wit.result +0 -0
  1834. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-include3.wit +0 -0
  1835. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-include3.wit.result +0 -0
  1836. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-list.wit +0 -0
  1837. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-list.wit.result +0 -0
  1838. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-pkg1/root.wit +0 -0
  1839. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-pkg1.wit.result +0 -0
  1840. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-pkg2/deps/bar/empty.wit +0 -0
  1841. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-pkg2/root.wit +0 -0
  1842. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-pkg2.wit.result +0 -0
  1843. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-pkg3/deps/bar/baz.wit +0 -0
  1844. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-pkg3/root.wit +0 -0
  1845. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-pkg3.wit.result +0 -0
  1846. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-pkg4/deps/bar/baz.wit +0 -0
  1847. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-pkg4/root.wit +0 -0
  1848. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-pkg4.wit.result +0 -0
  1849. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-pkg5/deps/bar/baz.wit +0 -0
  1850. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-pkg5/root.wit +0 -0
  1851. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-pkg5.wit.result +0 -0
  1852. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-pkg6/deps/bar/baz.wit +0 -0
  1853. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-pkg6/root.wit +0 -0
  1854. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-pkg6.wit.result +0 -0
  1855. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource1.wit +0 -0
  1856. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource1.wit.result +0 -0
  1857. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource10.wit +0 -0
  1858. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource10.wit.result +0 -0
  1859. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource11.wit +0 -0
  1860. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource11.wit.result +0 -0
  1861. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource12.wit +0 -0
  1862. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource12.wit.result +0 -0
  1863. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource13.wit +0 -0
  1864. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource13.wit.result +0 -0
  1865. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource14.wit +0 -0
  1866. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource14.wit.result +0 -0
  1867. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource15/deps/foo/foo.wit +0 -0
  1868. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource15/foo.wit +0 -0
  1869. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource15.wit.result +0 -0
  1870. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource2.wit +0 -0
  1871. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource2.wit.result +0 -0
  1872. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource3.wit +0 -0
  1873. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource3.wit.result +0 -0
  1874. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource4.wit +0 -0
  1875. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource4.wit.result +0 -0
  1876. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource5.wit +0 -0
  1877. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource5.wit.result +0 -0
  1878. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource6.wit +0 -0
  1879. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource6.wit.result +0 -0
  1880. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource7.wit +0 -0
  1881. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource7.wit.result +0 -0
  1882. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource8.wit +0 -0
  1883. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource8.wit.result +0 -0
  1884. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource9.wit +0 -0
  1885. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource9.wit.result +0 -0
  1886. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-world-type1.wit +0 -0
  1887. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-world-type1.wit.result +0 -0
  1888. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/conflicting-package/a.wit +0 -0
  1889. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/conflicting-package/b.wit +0 -0
  1890. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/conflicting-package.wit.result +0 -0
  1891. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/cycle.wit +0 -0
  1892. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/cycle.wit.result +0 -0
  1893. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/cycle2.wit +0 -0
  1894. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/cycle2.wit.result +0 -0
  1895. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/cycle3.wit +0 -0
  1896. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/cycle3.wit.result +0 -0
  1897. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/cycle4.wit +0 -0
  1898. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/cycle4.wit.result +0 -0
  1899. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/cycle5.wit +0 -0
  1900. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/cycle5.wit.result +0 -0
  1901. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/dangling-type.wit +0 -0
  1902. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/dangling-type.wit.result +0 -0
  1903. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/duplicate-function-params.wit +0 -0
  1904. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/duplicate-function-params.wit.result +0 -0
  1905. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/duplicate-functions.wit +0 -0
  1906. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/duplicate-functions.wit.result +0 -0
  1907. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/duplicate-interface.wit +0 -0
  1908. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/duplicate-interface.wit.result +0 -0
  1909. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/duplicate-interface2/foo.wit +0 -0
  1910. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/duplicate-interface2/foo2.wit +0 -0
  1911. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/duplicate-interface2.wit.result +0 -0
  1912. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/duplicate-type.wit +0 -0
  1913. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/duplicate-type.wit.result +0 -0
  1914. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/empty-enum.wit +0 -0
  1915. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/empty-enum.wit.result +0 -0
  1916. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/empty-variant1.wit +0 -0
  1917. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/empty-variant1.wit.result +0 -0
  1918. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/export-twice.wit +0 -0
  1919. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/export-twice.wit.result +0 -0
  1920. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/import-and-export1.wit +0 -0
  1921. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/import-and-export1.wit.result +0 -0
  1922. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/import-and-export2.wit +0 -0
  1923. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/import-and-export2.wit.result +0 -0
  1924. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/import-and-export3.wit +0 -0
  1925. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/import-and-export3.wit.result +0 -0
  1926. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/import-and-export4.wit +0 -0
  1927. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/import-and-export4.wit.result +0 -0
  1928. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/import-and-export5.wit +0 -0
  1929. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/import-and-export5.wit.result +0 -0
  1930. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/import-twice.wit +0 -0
  1931. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/import-twice.wit.result +0 -0
  1932. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/include-cycle.wit +0 -0
  1933. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/include-cycle.wit.result +0 -0
  1934. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/include-foreign/deps/bar/empty.wit +0 -0
  1935. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/include-foreign/root.wit +0 -0
  1936. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/include-foreign.wit.result +0 -0
  1937. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/include-with-id.wit +0 -0
  1938. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/include-with-id.wit.result +0 -0
  1939. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/include-with-on-id.wit +0 -0
  1940. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/include-with-on-id.wit.result +0 -0
  1941. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/invalid-toplevel.wit +0 -0
  1942. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/invalid-toplevel.wit.result +0 -0
  1943. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/invalid-type-reference.wit +0 -0
  1944. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/invalid-type-reference.wit.result +0 -0
  1945. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/invalid-type-reference2.wit +0 -0
  1946. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/invalid-type-reference2.wit.result +0 -0
  1947. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/kebab-name-include-not-found.wit +0 -0
  1948. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/kebab-name-include-not-found.wit.result +0 -0
  1949. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/kebab-name-include.wit +0 -0
  1950. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/kebab-name-include.wit.result +0 -0
  1951. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/keyword.wit +0 -0
  1952. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/keyword.wit.result +0 -0
  1953. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/missing-package.wit +0 -0
  1954. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/missing-package.wit.result +0 -0
  1955. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/multiple-package-docs/a.wit +0 -0
  1956. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/multiple-package-docs/b.wit +0 -0
  1957. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/multiple-package-docs.wit.result +0 -0
  1958. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/no-access-to-sibling-use/bar.wit +0 -0
  1959. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/no-access-to-sibling-use/foo.wit +0 -0
  1960. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/no-access-to-sibling-use.wit.result +0 -0
  1961. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/non-existance-world-include/deps/bar/baz.wit +0 -0
  1962. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/non-existance-world-include/root.wit +0 -0
  1963. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/non-existance-world-include.wit.result +0 -0
  1964. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/pkg-cycle/deps/a1/root.wit +0 -0
  1965. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/pkg-cycle/root.wit +0 -0
  1966. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/pkg-cycle.wit.result +0 -0
  1967. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/pkg-cycle2/deps/a1/root.wit +0 -0
  1968. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/pkg-cycle2/deps/a2/root.wit +0 -0
  1969. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/pkg-cycle2/root.wit +0 -0
  1970. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/pkg-cycle2.wit.result +0 -0
  1971. /data/ext/cargo-vendor/{wit-parser-0.202.0/tests/ui → wit-parser-0.207.0/tests/ui/parse-fail}/resources-multiple-returns-borrow.wit +0 -0
  1972. /data/ext/cargo-vendor/{wit-parser-0.202.0/tests/ui → wit-parser-0.207.0/tests/ui/parse-fail}/resources-return-borrow.wit +0 -0
  1973. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/type-and-resource-same-name/deps/dep/foo.wit +0 -0
  1974. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/type-and-resource-same-name/foo.wit +0 -0
  1975. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/type-and-resource-same-name.wit.result +0 -0
  1976. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/undefined-typed.wit +0 -0
  1977. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/undefined-typed.wit.result +0 -0
  1978. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unknown-interface.wit +0 -0
  1979. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unknown-interface.wit.result +0 -0
  1980. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-interface1.wit +0 -0
  1981. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-interface1.wit.result +0 -0
  1982. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-interface2.wit +0 -0
  1983. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-interface2.wit.result +0 -0
  1984. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-interface3.wit +0 -0
  1985. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-interface3.wit.result +0 -0
  1986. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-interface4.wit +0 -0
  1987. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-interface4.wit.result +0 -0
  1988. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-use1.wit +0 -0
  1989. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-use1.wit.result +0 -0
  1990. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-use10/bar.wit +0 -0
  1991. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-use10/foo.wit +0 -0
  1992. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-use10.wit.result +0 -0
  1993. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-use2.wit +0 -0
  1994. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-use2.wit.result +0 -0
  1995. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-use3.wit +0 -0
  1996. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-use3.wit.result +0 -0
  1997. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-use7.wit +0 -0
  1998. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-use7.wit.result +0 -0
  1999. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-use8.wit +0 -0
  2000. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-use8.wit.result +0 -0
  2001. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-use9.wit +0 -0
  2002. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-use9.wit.result +0 -0
  2003. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unterminated-string.wit.result +0 -0
  2004. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-and-include-world/deps/bar/baz.wit +0 -0
  2005. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-and-include-world/root.wit +0 -0
  2006. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-and-include-world.wit.result +0 -0
  2007. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-conflict.wit +0 -0
  2008. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-conflict.wit.result +0 -0
  2009. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-conflict2.wit +0 -0
  2010. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-conflict2.wit.result +0 -0
  2011. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-conflict3.wit +0 -0
  2012. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-conflict3.wit.result +0 -0
  2013. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-cycle1.wit +0 -0
  2014. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-cycle1.wit.result +0 -0
  2015. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-cycle4.wit +0 -0
  2016. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-cycle4.wit.result +0 -0
  2017. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-shadow1.wit +0 -0
  2018. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-shadow1.wit.result +0 -0
  2019. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-world/deps/bar/baz.wit +0 -0
  2020. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-world/root.wit +0 -0
  2021. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-world.wit.result +0 -0
  2022. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/world-interface-clash.wit +0 -0
  2023. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/world-interface-clash.wit.result +0 -0
  2024. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/world-same-fields2.wit +0 -0
  2025. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/world-same-fields2.wit.result +0 -0
  2026. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/world-same-fields3.wit +0 -0
  2027. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/world-same-fields3.wit.result +0 -0
  2028. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/world-top-level-func.wit +0 -0
  2029. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/world-top-level-func.wit.result +0 -0
  2030. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/world-top-level-func2.wit +0 -0
  2031. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/world-top-level-func2.wit.result +0 -0
  2032. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/random.wit +0 -0
  2033. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/random.wit.json +0 -0
  2034. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/resources-empty.wit +0 -0
  2035. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/resources-empty.wit.json +0 -0
  2036. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/resources-multiple-returns-own.wit +0 -0
  2037. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/resources-multiple-returns-own.wit.json +0 -0
  2038. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/resources-multiple.wit +0 -0
  2039. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/resources-multiple.wit.json +0 -0
  2040. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/resources-return-own.wit +0 -0
  2041. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/resources-return-own.wit.json +0 -0
  2042. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/resources.wit +0 -0
  2043. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/resources.wit.json +0 -0
  2044. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/resources1.wit +0 -0
  2045. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/resources1.wit.json +0 -0
  2046. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/same-name-import-export.wit +0 -0
  2047. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/same-name-import-export.wit.json +0 -0
  2048. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/shared-types.wit +0 -0
  2049. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/shared-types.wit.json +0 -0
  2050. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/simple-wasm-text.wat +0 -0
  2051. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/simple-wasm-text.wit.json +0 -0
  2052. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/stress-export-elaborate.wit +0 -0
  2053. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/stress-export-elaborate.wit.json +0 -0
  2054. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/type-then-eof.wit +0 -0
  2055. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/type-then-eof.wit.json +0 -0
  2056. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/types.wit +0 -0
  2057. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/types.wit.json +0 -0
  2058. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/union-fuzz-1.wit +0 -0
  2059. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/union-fuzz-1.wit.json +0 -0
  2060. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/union-fuzz-2.wit +0 -0
  2061. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/union-fuzz-2.wit.json +0 -0
  2062. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/use-chain.wit +0 -0
  2063. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/use-chain.wit.json +0 -0
  2064. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/use.wit +0 -0
  2065. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/use.wit.json +0 -0
  2066. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/versions/deps/a1/foo.wit +0 -0
  2067. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/versions/deps/a2/foo.wit +0 -0
  2068. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/versions/foo.wit +0 -0
  2069. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/versions.wit.json +0 -0
  2070. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/wasi.wit +0 -0
  2071. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/wasi.wit.json +0 -0
  2072. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/world-diamond.wit +0 -0
  2073. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/world-diamond.wit.json +0 -0
  2074. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/world-iface-no-collide.wit +0 -0
  2075. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/world-iface-no-collide.wit.json +0 -0
  2076. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/world-implicit-import1.wit +0 -0
  2077. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/world-implicit-import1.wit.json +0 -0
  2078. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/world-implicit-import2.wit +0 -0
  2079. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/world-implicit-import2.wit.json +0 -0
  2080. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/world-implicit-import3.wit +0 -0
  2081. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/world-implicit-import3.wit.json +0 -0
  2082. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/world-same-fields4.wit +0 -0
  2083. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/world-same-fields4.wit.json +0 -0
  2084. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/world-top-level-funcs.wit +0 -0
  2085. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/world-top-level-funcs.wit.json +0 -0
  2086. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/worlds-union-dedup.wit +0 -0
  2087. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/worlds-union-dedup.wit.json +0 -0
  2088. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/worlds-with-types.wit +0 -0
  2089. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/worlds-with-types.wit.json +0 -0
@@ -0,0 +1,3226 @@
1
+ //! A crate to convert a WebAssembly binary to its textual representation in the
2
+ //! WebAssembly Text Format (WAT).
3
+ //!
4
+ //! This crate is intended for developer toolchains and debugging, supporting
5
+ //! human-readable versions of a wasm binary. This can also be useful when
6
+ //! developing wasm toolchain support in Rust for various purposes like testing
7
+ //! and debugging and such.
8
+
9
+ #![deny(missing_docs)]
10
+
11
+ use anyhow::{anyhow, bail, Context, Result};
12
+ use std::collections::{HashMap, HashSet};
13
+ use std::fmt::{self, Write};
14
+ use std::marker;
15
+ use std::mem;
16
+ use std::path::Path;
17
+ use wasmparser::*;
18
+
19
+ const MAX_LOCALS: u32 = 50000;
20
+ const MAX_NESTING_TO_PRINT: u32 = 50;
21
+ const MAX_WASM_FUNCTIONS: u32 = 1_000_000;
22
+ const MAX_WASM_FUNCTION_SIZE: u32 = 128 * 1024;
23
+
24
+ mod operator;
25
+
26
+ /// Reads a WebAssembly `file` from the filesystem and then prints it into an
27
+ /// in-memory `String`.
28
+ pub fn print_file(file: impl AsRef<Path>) -> Result<String> {
29
+ let file = file.as_ref();
30
+ let contents = std::fs::read(file).context(format!("failed to read `{}`", file.display()))?;
31
+ Printer::new().print(&contents)
32
+ }
33
+
34
+ /// Prints an in-memory `wasm` binary blob into an in-memory `String` which is
35
+ /// its textual representation.
36
+ pub fn print_bytes(wasm: impl AsRef<[u8]>) -> Result<String> {
37
+ Printer::new().print(wasm.as_ref())
38
+ }
39
+
40
+ /// Context used for printing a WebAssembly binary.
41
+ ///
42
+ /// This is largely only required if you'd like to register custom printers for
43
+ /// custom sections in a wasm binary.
44
+ #[derive(Default)]
45
+ pub struct Printer {
46
+ print_offsets: bool,
47
+ print_skeleton: bool,
48
+ printers: HashMap<String, Box<dyn FnMut(&mut Printer, usize, &[u8]) -> Result<()>>>,
49
+ result: String,
50
+ /// The `i`th line in `result` is at offset `lines[i]`.
51
+ lines: Vec<usize>,
52
+ /// The binary offset for the `i`th line is `line_offsets[i]`.
53
+ line_offsets: Vec<Option<usize>>,
54
+ nesting: u32,
55
+ line: usize,
56
+ group_lines: Vec<usize>,
57
+ code_section_hints: Vec<(u32, Vec<(usize, BranchHint)>)>,
58
+ name_unnamed: bool,
59
+ }
60
+
61
+ #[derive(Default)]
62
+ struct CoreState {
63
+ types: Vec<Option<SubType>>,
64
+ funcs: u32,
65
+ memories: u32,
66
+ tags: u32,
67
+ globals: u32,
68
+ tables: u32,
69
+ modules: u32,
70
+ instances: u32,
71
+ func_names: NamingMap<u32, NameFunc>,
72
+ local_names: NamingMap<(u32, u32), NameLocal>,
73
+ label_names: NamingMap<(u32, u32), NameLabel>,
74
+ type_names: NamingMap<u32, NameType>,
75
+ field_names: NamingMap<(u32, u32), NameField>,
76
+ tag_names: NamingMap<u32, NameTag>,
77
+ table_names: NamingMap<u32, NameTable>,
78
+ memory_names: NamingMap<u32, NameMemory>,
79
+ global_names: NamingMap<u32, NameGlobal>,
80
+ element_names: NamingMap<u32, NameElem>,
81
+ data_names: NamingMap<u32, NameData>,
82
+ module_names: NamingMap<u32, NameModule>,
83
+ instance_names: NamingMap<u32, NameInstance>,
84
+ }
85
+
86
+ /// A map of index-to-name for tracking what are the contents of the name
87
+ /// section.
88
+ ///
89
+ /// The type parameter `T` is either `u32` for most index-based maps or a `(u32,
90
+ /// u32)` for label/local maps where there are two levels of indices.
91
+ ///
92
+ /// The type parameter `K` is a static description/namespace for what kind of
93
+ /// item is contained within this map. That's used by some helper methods to
94
+ /// synthesize reasonable names automatically.
95
+ struct NamingMap<T, K> {
96
+ index_to_name: HashMap<T, Naming>,
97
+ _marker: marker::PhantomData<K>,
98
+ }
99
+
100
+ impl<T, K> Default for NamingMap<T, K> {
101
+ fn default() -> NamingMap<T, K> {
102
+ NamingMap {
103
+ index_to_name: HashMap::new(),
104
+ _marker: marker::PhantomData,
105
+ }
106
+ }
107
+ }
108
+
109
+ #[derive(Default)]
110
+ struct ComponentState {
111
+ types: u32,
112
+ funcs: u32,
113
+ instances: u32,
114
+ components: u32,
115
+ values: u32,
116
+ type_names: NamingMap<u32, NameType>,
117
+ func_names: NamingMap<u32, NameFunc>,
118
+ component_names: NamingMap<u32, NameComponent>,
119
+ instance_names: NamingMap<u32, NameInstance>,
120
+ value_names: NamingMap<u32, NameValue>,
121
+ }
122
+
123
+ struct State {
124
+ encoding: Encoding,
125
+ name: Option<Naming>,
126
+ core: CoreState,
127
+ component: ComponentState,
128
+ custom_section_place: Option<&'static str>,
129
+ }
130
+
131
+ impl State {
132
+ fn new(encoding: Encoding) -> Self {
133
+ Self {
134
+ encoding,
135
+ name: None,
136
+ core: CoreState::default(),
137
+ component: ComponentState::default(),
138
+ custom_section_place: None,
139
+ }
140
+ }
141
+ }
142
+
143
+ struct Naming {
144
+ identifier: Option<String>,
145
+ name: String,
146
+ }
147
+
148
+ impl Printer {
149
+ /// Creates a new `Printer` object that's ready to start printing wasm
150
+ /// binaries to strings.
151
+ pub fn new() -> Self {
152
+ Self::default()
153
+ }
154
+
155
+ /// Whether or not to print binary offsets of each item as comments in the
156
+ /// text format whenever a newline is printed.
157
+ pub fn print_offsets(&mut self, print: bool) {
158
+ self.print_offsets = print;
159
+ }
160
+
161
+ /// Whether or not to print only a "skeleton" which skips function bodies,
162
+ /// data segment contents, element segment contents, etc.
163
+ pub fn print_skeleton(&mut self, print: bool) {
164
+ self.print_skeleton = print;
165
+ }
166
+
167
+ /// Assign names to all unnamed items.
168
+ ///
169
+ /// If enabled then any previously unnamed item will have a name synthesized
170
+ /// that looks like `$#func10` for example. The leading `#` indicates that
171
+ /// it's `wasmprinter`-generated. The `func` is the namespace of the name
172
+ /// and provides extra context about the item when referenced. The 10 is the
173
+ /// local index of the item.
174
+ ///
175
+ /// Note that if the resulting text output is converted back to binary the
176
+ /// resulting `name` custom section will not be the same as before.
177
+ pub fn name_unnamed(&mut self, enable: bool) {
178
+ self.name_unnamed = enable;
179
+ }
180
+
181
+ /// Registers a custom `printer` function to get invoked whenever a custom
182
+ /// section of name `section` is seen.
183
+ ///
184
+ /// This can be used to register printers into a textual format for custom
185
+ /// sections, such as by emitting annotations and/or other textual
186
+ /// references (maybe comments!)
187
+ ///
188
+ /// By default all custom sections are ignored for the text format.
189
+ ///
190
+ /// The `printer` function provided takes three arguments:
191
+ ///
192
+ /// * A `&mut Printer`, or where to print results to
193
+ /// * A `usize` offset which is the start of the offset for the custom
194
+ /// section
195
+ /// * A byte slice which is the actual contents of the custom section.
196
+ pub fn add_custom_section_printer(
197
+ &mut self,
198
+ section: &str,
199
+ printer: impl FnMut(&mut Printer, usize, &[u8]) -> Result<()> + 'static,
200
+ ) {
201
+ self.printers.insert(section.to_string(), Box::new(printer));
202
+ }
203
+
204
+ /// Gets the output result of this `Printer`, or where all output is going.
205
+ pub fn result_mut(&mut self) -> &mut String {
206
+ &mut self.result
207
+ }
208
+
209
+ /// Prints a WebAssembly binary into a `String`
210
+ ///
211
+ /// This function takes an entire `wasm` binary blob and will print it to
212
+ /// the WebAssembly Text Format and return the result as a `String`.
213
+ pub fn print(&mut self, wasm: &[u8]) -> Result<String> {
214
+ self.print_contents(wasm)?;
215
+ Ok(mem::take(&mut self.result))
216
+ }
217
+
218
+ /// Get the line-by-line WAT disassembly for the given Wasm, along with the
219
+ /// binary offsets for each line.
220
+ pub fn offsets_and_lines<'a>(
221
+ &'a mut self,
222
+ wasm: &[u8],
223
+ ) -> Result<impl Iterator<Item = (Option<usize>, &'a str)> + 'a> {
224
+ self.print_contents(wasm)?;
225
+
226
+ let end = self.result.len();
227
+ let result = &self.result;
228
+
229
+ let mut offsets = self.line_offsets.iter().copied();
230
+ let mut lines = self.lines.iter().copied().peekable();
231
+
232
+ Ok(std::iter::from_fn(move || {
233
+ let offset = offsets.next()?;
234
+ let i = lines.next()?;
235
+ let j = lines.peek().copied().unwrap_or(end);
236
+ let line = &result[i..j];
237
+ Some((offset, line))
238
+ }))
239
+ }
240
+
241
+ fn read_names_and_code<'a>(
242
+ &mut self,
243
+ mut bytes: &'a [u8],
244
+ mut parser: Parser,
245
+ state: &mut State,
246
+ code: &mut Vec<FunctionBody<'a>>,
247
+ ) -> Result<()> {
248
+ loop {
249
+ let payload = match parser.parse(bytes, true)? {
250
+ Chunk::NeedMoreData(_) => unreachable!(),
251
+ Chunk::Parsed { payload, consumed } => {
252
+ bytes = &bytes[consumed..];
253
+ payload
254
+ }
255
+ };
256
+
257
+ match payload {
258
+ Payload::FunctionSection(s) => {
259
+ if s.count() > MAX_WASM_FUNCTIONS {
260
+ bail!(
261
+ "module contains {} functions which exceeds the limit of {}",
262
+ s.count(),
263
+ MAX_WASM_FUNCTIONS
264
+ );
265
+ }
266
+ code.reserve(s.count() as usize);
267
+ }
268
+ Payload::CodeSectionEntry(f) => {
269
+ code.push(f);
270
+ }
271
+ Payload::ModuleSection {
272
+ unchecked_range: range,
273
+ ..
274
+ }
275
+ | Payload::ComponentSection {
276
+ unchecked_range: range,
277
+ ..
278
+ } => {
279
+ let offset = range.end - range.start;
280
+ if offset > bytes.len() {
281
+ bail!("invalid module or component section range");
282
+ }
283
+ bytes = &bytes[offset..];
284
+ }
285
+
286
+ // Ignore any error associated with the name sections.
287
+ Payload::CustomSection(c) if c.name() == "name" => {
288
+ let reader = NameSectionReader::new(c.data(), c.data_offset());
289
+ drop(self.register_names(state, reader));
290
+ }
291
+ Payload::CustomSection(c) if c.name() == "component-name" => {
292
+ let reader = ComponentNameSectionReader::new(c.data(), c.data_offset());
293
+ drop(self.register_component_names(state, reader));
294
+ }
295
+
296
+ Payload::CustomSection(c) if c.name() == "metadata.code.branch_hint" => {
297
+ drop(
298
+ self.register_branch_hint_section(BranchHintSectionReader::new(
299
+ c.data(),
300
+ c.data_offset(),
301
+ )?),
302
+ );
303
+ }
304
+
305
+ Payload::End(_) => break,
306
+ _ => {}
307
+ }
308
+ }
309
+
310
+ Ok(())
311
+ }
312
+
313
+ fn ensure_module(states: &[State]) -> Result<()> {
314
+ if !matches!(states.last().unwrap().encoding, Encoding::Module) {
315
+ bail!("a module section was encountered when parsing a component");
316
+ }
317
+
318
+ Ok(())
319
+ }
320
+
321
+ fn ensure_component(states: &[State]) -> Result<()> {
322
+ if !matches!(states.last().unwrap().encoding, Encoding::Component) {
323
+ bail!("a component section was encountered when parsing a module");
324
+ }
325
+
326
+ Ok(())
327
+ }
328
+
329
+ fn print_contents(&mut self, mut bytes: &[u8]) -> Result<()> {
330
+ self.lines.clear();
331
+ self.lines.push(0);
332
+ self.line_offsets.clear();
333
+ self.line_offsets.push(Some(0));
334
+
335
+ let mut expected = None;
336
+ let mut states: Vec<State> = Vec::new();
337
+ let mut parser = Parser::new(0);
338
+ let mut parsers = Vec::new();
339
+ let mut code = Vec::new();
340
+ let mut code_printed = false;
341
+
342
+ loop {
343
+ let payload = match parser.parse(bytes, true)? {
344
+ Chunk::NeedMoreData(_) => unreachable!(),
345
+ Chunk::Parsed { payload, consumed } => {
346
+ bytes = &bytes[consumed..];
347
+ payload
348
+ }
349
+ };
350
+ match payload {
351
+ Payload::Version { encoding, .. } => {
352
+ if let Some(e) = expected {
353
+ if encoding != e {
354
+ bail!("incorrect encoding for nested module or component");
355
+ }
356
+ expected = None;
357
+ }
358
+
359
+ assert!(states.last().map(|s| s.encoding) != Some(Encoding::Module));
360
+
361
+ match encoding {
362
+ Encoding::Module => {
363
+ states.push(State::new(Encoding::Module));
364
+ states.last_mut().unwrap().custom_section_place = Some("before first");
365
+ if states.len() > 1 {
366
+ self.start_group("core module");
367
+ } else {
368
+ self.start_group("module");
369
+ }
370
+
371
+ if states.len() > 1 {
372
+ let parent = &states[states.len() - 2];
373
+ self.result.push(' ');
374
+ self.print_name(&parent.core.module_names, parent.core.modules)?;
375
+ }
376
+ }
377
+ Encoding::Component => {
378
+ states.push(State::new(Encoding::Component));
379
+ self.start_group("component");
380
+
381
+ if states.len() > 1 {
382
+ let parent = &states[states.len() - 2];
383
+ self.result.push(' ');
384
+ self.print_name(
385
+ &parent.component.component_names,
386
+ parent.component.components,
387
+ )?;
388
+ }
389
+ }
390
+ }
391
+
392
+ let len = states.len();
393
+ let state = states.last_mut().unwrap();
394
+
395
+ // First up try to find the `name` subsection which we'll use to print
396
+ // pretty names everywhere. Also look for the `code` section so we can
397
+ // print out functions as soon as we hit the function section.
398
+ code.clear();
399
+ code_printed = false;
400
+ self.read_names_and_code(bytes, parser.clone(), state, &mut code)?;
401
+
402
+ if len == 1 {
403
+ if let Some(name) = state.name.as_ref() {
404
+ self.result.push(' ');
405
+ name.write(&mut self.result);
406
+ }
407
+ }
408
+ }
409
+ Payload::CustomSection(c) => {
410
+ let mut printed = false;
411
+ let mut printers = mem::take(&mut self.printers);
412
+ if let Some(printer) = printers.get_mut(c.name()) {
413
+ printer(self, c.data_offset(), c.data())?;
414
+ printed = true;
415
+ }
416
+ self.printers = printers;
417
+
418
+ // Attempt to print this custom section if it wasn't already
419
+ // handled specifically above. Note that custom sections are
420
+ // allowed to be invalid, so any parse error here is ignored
421
+ // and resets the output to what it was when this started.
422
+ // Otherwise I/O errors and other things are plumbed through
423
+ // in case they happen.
424
+ if printed {
425
+ continue;
426
+ }
427
+ let cur = self.result.len();
428
+ let state = states.last().unwrap();
429
+ let err = match self.print_custom_section(state, c.clone()) {
430
+ Ok(()) => continue,
431
+ Err(e) => e,
432
+ };
433
+ if !err.is::<BinaryReaderError>() {
434
+ return Err(err);
435
+ }
436
+ self.result.truncate(cur);
437
+ let msg = format!("failed to parse custom section `{}`: {err}", c.name());
438
+ for line in msg.lines() {
439
+ self.newline(c.data_offset());
440
+ self.result.push_str(";; ");
441
+ self.result.push_str(line);
442
+ }
443
+ self.newline(c.range().end);
444
+ self.print_raw_custom_section(state, c)?;
445
+ }
446
+ Payload::TypeSection(s) => {
447
+ self.update_custom_section_place(&mut states, "after type");
448
+ self.print_types(states.last_mut().unwrap(), s)?;
449
+ }
450
+ Payload::ImportSection(s) => {
451
+ self.update_custom_section_place(&mut states, "after import");
452
+ Self::ensure_module(&states)?;
453
+ self.print_imports(states.last_mut().unwrap(), s)?
454
+ }
455
+ Payload::FunctionSection(reader) => {
456
+ self.update_custom_section_place(&mut states, "after func");
457
+ Self::ensure_module(&states)?;
458
+ if mem::replace(&mut code_printed, true) {
459
+ bail!("function section appeared twice in module");
460
+ }
461
+ if reader.count() == 0 {
462
+ continue;
463
+ }
464
+ self.print_code(states.last_mut().unwrap(), &code, reader)?;
465
+ }
466
+ Payload::TableSection(s) => {
467
+ self.update_custom_section_place(&mut states, "after table");
468
+ Self::ensure_module(&states)?;
469
+ self.print_tables(states.last_mut().unwrap(), s)?
470
+ }
471
+ Payload::MemorySection(s) => {
472
+ self.update_custom_section_place(&mut states, "after memory");
473
+ Self::ensure_module(&states)?;
474
+ self.print_memories(states.last_mut().unwrap(), s)?
475
+ }
476
+ Payload::TagSection(s) => {
477
+ self.update_custom_section_place(&mut states, "after tag");
478
+ Self::ensure_module(&states)?;
479
+ self.print_tags(states.last_mut().unwrap(), s)?
480
+ }
481
+ Payload::GlobalSection(s) => {
482
+ self.update_custom_section_place(&mut states, "after global");
483
+ Self::ensure_module(&states)?;
484
+ self.print_globals(states.last_mut().unwrap(), s)?
485
+ }
486
+ Payload::ExportSection(s) => {
487
+ self.update_custom_section_place(&mut states, "after export");
488
+ Self::ensure_module(&states)?;
489
+ self.print_exports(states.last().unwrap(), s)?
490
+ }
491
+ Payload::StartSection { func, range } => {
492
+ self.update_custom_section_place(&mut states, "after start");
493
+ Self::ensure_module(&states)?;
494
+ self.newline(range.start);
495
+ self.start_group("start ");
496
+ self.print_idx(&states.last().unwrap().core.func_names, func)?;
497
+ self.end_group();
498
+ }
499
+ Payload::ElementSection(s) => {
500
+ self.update_custom_section_place(&mut states, "after element");
501
+ Self::ensure_module(&states)?;
502
+ self.print_elems(states.last_mut().unwrap(), s)?;
503
+ }
504
+ // printed with the `Function` section, so we
505
+ // skip this section
506
+ Payload::CodeSectionStart { size, .. } => {
507
+ self.update_custom_section_place(&mut states, "after code");
508
+ Self::ensure_module(&states)?;
509
+ bytes = &bytes[size as usize..];
510
+ parser.skip_section();
511
+ }
512
+ Payload::CodeSectionEntry(_) => unreachable!(),
513
+ Payload::DataCountSection { .. } => {
514
+ Self::ensure_module(&states)?;
515
+ // not part of the text format
516
+ }
517
+ Payload::DataSection(s) => {
518
+ self.update_custom_section_place(&mut states, "after data");
519
+ Self::ensure_module(&states)?;
520
+ self.print_data(states.last_mut().unwrap(), s)?;
521
+ }
522
+
523
+ Payload::ModuleSection {
524
+ parser: inner,
525
+ unchecked_range: range,
526
+ } => {
527
+ Self::ensure_component(&states)?;
528
+ expected = Some(Encoding::Module);
529
+ parsers.push(parser);
530
+ parser = inner;
531
+ self.newline(range.start);
532
+ }
533
+ Payload::InstanceSection(s) => {
534
+ Self::ensure_component(&states)?;
535
+ self.print_instances(states.last_mut().unwrap(), s)?;
536
+ }
537
+ Payload::CoreTypeSection(s) => self.print_core_types(&mut states, s)?,
538
+ Payload::ComponentSection {
539
+ parser: inner,
540
+ unchecked_range: range,
541
+ } => {
542
+ Self::ensure_component(&states)?;
543
+ expected = Some(Encoding::Component);
544
+ parsers.push(parser);
545
+ parser = inner;
546
+ self.newline(range.start);
547
+ }
548
+ Payload::ComponentInstanceSection(s) => {
549
+ Self::ensure_component(&states)?;
550
+ self.print_component_instances(states.last_mut().unwrap(), s)?;
551
+ }
552
+ Payload::ComponentAliasSection(s) => {
553
+ Self::ensure_component(&states)?;
554
+ self.print_component_aliases(&mut states, s)?;
555
+ }
556
+ Payload::ComponentTypeSection(s) => {
557
+ Self::ensure_component(&states)?;
558
+ self.print_component_types(&mut states, s)?;
559
+ }
560
+ Payload::ComponentCanonicalSection(s) => {
561
+ Self::ensure_component(&states)?;
562
+ self.print_canonical_functions(states.last_mut().unwrap(), s)?;
563
+ }
564
+ Payload::ComponentStartSection { start, range } => {
565
+ Self::ensure_component(&states)?;
566
+ self.print_component_start(states.last_mut().unwrap(), range.start, start)?;
567
+ }
568
+ Payload::ComponentImportSection(s) => {
569
+ Self::ensure_component(&states)?;
570
+ self.print_component_imports(states.last_mut().unwrap(), s)?;
571
+ }
572
+ Payload::ComponentExportSection(s) => {
573
+ Self::ensure_component(&states)?;
574
+ self.print_component_exports(states.last_mut().unwrap(), s)?;
575
+ }
576
+
577
+ Payload::End(offset) => {
578
+ self.end_group(); // close the `module` or `component` group
579
+
580
+ let state = states.pop().unwrap();
581
+ if let Some(parent) = states.last_mut() {
582
+ match state.encoding {
583
+ Encoding::Module => {
584
+ parent.core.modules += 1;
585
+ }
586
+ Encoding::Component => {
587
+ parent.component.components += 1;
588
+ }
589
+ }
590
+ parser = parsers.pop().unwrap();
591
+ } else {
592
+ self.newline(offset);
593
+ if self.print_offsets {
594
+ self.result.push('\n');
595
+ }
596
+ break;
597
+ }
598
+ }
599
+
600
+ Payload::UnknownSection { id, .. } => bail!("found unknown section `{}`", id),
601
+ }
602
+ }
603
+
604
+ Ok(())
605
+ }
606
+
607
+ fn update_custom_section_place(&self, states: &mut Vec<State>, place: &'static str) {
608
+ if let Some(last) = states.last_mut() {
609
+ if let Some(prev) = &mut last.custom_section_place {
610
+ *prev = place;
611
+ }
612
+ }
613
+ }
614
+
615
+ fn start_group(&mut self, name: &str) {
616
+ self.result.push('(');
617
+ self.result.push_str(name);
618
+ self.nesting += 1;
619
+ self.group_lines.push(self.line);
620
+ }
621
+
622
+ fn end_group(&mut self) {
623
+ self.nesting -= 1;
624
+ if let Some(line) = self.group_lines.pop() {
625
+ if line != self.line {
626
+ self.newline_unknown_pos();
627
+ }
628
+ }
629
+ self.result.push(')');
630
+ }
631
+
632
+ fn register_names(&mut self, state: &mut State, names: NameSectionReader<'_>) -> Result<()> {
633
+ fn indirect_name_map<K>(
634
+ into: &mut NamingMap<(u32, u32), K>,
635
+ names: IndirectNameMap<'_>,
636
+ name: &str,
637
+ ) -> Result<()> {
638
+ for indirect in names {
639
+ let indirect = indirect?;
640
+ let mut used = match name {
641
+ // labels can be shadowed, so maintaining the used names is not useful.
642
+ "label" => None,
643
+ "local" | "field" => Some(HashSet::new()),
644
+ _ => unimplemented!("{name} is an unknown type of indirect names"),
645
+ };
646
+ for naming in indirect.names {
647
+ let naming = naming?;
648
+ into.index_to_name.insert(
649
+ (indirect.index, naming.index),
650
+ Naming::new(naming.name, naming.index, name, used.as_mut()),
651
+ );
652
+ }
653
+ }
654
+ Ok(())
655
+ }
656
+
657
+ for section in names {
658
+ match section? {
659
+ Name::Module { name, .. } => {
660
+ let name = Naming::new(name, 0, "module", None);
661
+ state.name = Some(name);
662
+ }
663
+ Name::Function(n) => name_map(&mut state.core.func_names, n, "func")?,
664
+ Name::Local(n) => indirect_name_map(&mut state.core.local_names, n, "local")?,
665
+ Name::Label(n) => indirect_name_map(&mut state.core.label_names, n, "label")?,
666
+ Name::Type(n) => name_map(&mut state.core.type_names, n, "type")?,
667
+ Name::Table(n) => name_map(&mut state.core.table_names, n, "table")?,
668
+ Name::Memory(n) => name_map(&mut state.core.memory_names, n, "memory")?,
669
+ Name::Global(n) => name_map(&mut state.core.global_names, n, "global")?,
670
+ Name::Element(n) => name_map(&mut state.core.element_names, n, "elem")?,
671
+ Name::Data(n) => name_map(&mut state.core.data_names, n, "data")?,
672
+ Name::Field(n) => indirect_name_map(&mut state.core.field_names, n, "field")?,
673
+ Name::Tag(n) => name_map(&mut state.core.tag_names, n, "tag")?,
674
+ Name::Unknown { .. } => (),
675
+ }
676
+ }
677
+ Ok(())
678
+ }
679
+
680
+ fn register_component_names(
681
+ &mut self,
682
+ state: &mut State,
683
+ names: ComponentNameSectionReader<'_>,
684
+ ) -> Result<()> {
685
+ for section in names {
686
+ match section? {
687
+ ComponentName::Component { name, .. } => {
688
+ let name = Naming::new(name, 0, "component", None);
689
+ state.name = Some(name);
690
+ }
691
+ ComponentName::CoreFuncs(n) => {
692
+ name_map(&mut state.core.func_names, n, "core-func")?
693
+ }
694
+ ComponentName::CoreTypes(n) => {
695
+ name_map(&mut state.core.type_names, n, "core-type")?
696
+ }
697
+ ComponentName::CoreTables(n) => {
698
+ name_map(&mut state.core.table_names, n, "core-table")?
699
+ }
700
+ ComponentName::CoreMemories(n) => {
701
+ name_map(&mut state.core.memory_names, n, "core-memory")?
702
+ }
703
+ ComponentName::CoreGlobals(n) => {
704
+ name_map(&mut state.core.global_names, n, "core-global")?
705
+ }
706
+ ComponentName::CoreModules(n) => {
707
+ name_map(&mut state.core.module_names, n, "core-module")?
708
+ }
709
+ ComponentName::CoreInstances(n) => {
710
+ name_map(&mut state.core.instance_names, n, "core-instance")?
711
+ }
712
+ ComponentName::Types(n) => name_map(&mut state.component.type_names, n, "type")?,
713
+ ComponentName::Instances(n) => {
714
+ name_map(&mut state.component.instance_names, n, "instance")?
715
+ }
716
+ ComponentName::Components(n) => {
717
+ name_map(&mut state.component.component_names, n, "component")?
718
+ }
719
+ ComponentName::Funcs(n) => name_map(&mut state.component.func_names, n, "func")?,
720
+ ComponentName::Values(n) => name_map(&mut state.component.value_names, n, "value")?,
721
+ ComponentName::Unknown { .. } => (),
722
+ }
723
+ }
724
+ Ok(())
725
+ }
726
+
727
+ fn print_core_type(&mut self, states: &mut Vec<State>, ty: CoreType) -> Result<()> {
728
+ self.start_group("core type ");
729
+ self.print_name(
730
+ &states.last().unwrap().core.type_names,
731
+ states.last().unwrap().core.types.len() as u32,
732
+ )?;
733
+ let ty = match ty {
734
+ CoreType::Sub(ty) => {
735
+ let ty = match &ty.composite_type {
736
+ CompositeType::Func(f) => f,
737
+ CompositeType::Array(_) | CompositeType::Struct(_) => {
738
+ unreachable!("Wasm GC types cannot appear in components yet")
739
+ }
740
+ };
741
+ self.result.push(' ');
742
+ self.start_group("func");
743
+ self.print_func_type(states.last().unwrap(), &ty, None)?;
744
+ self.end_group();
745
+ Some(SubType {
746
+ is_final: true,
747
+ supertype_idx: None,
748
+ composite_type: CompositeType::Func(ty.clone()),
749
+ })
750
+ }
751
+ CoreType::Module(decls) => {
752
+ self.print_module_type(states, decls.into_vec())?;
753
+ None
754
+ }
755
+ };
756
+ self.end_group(); // `core type` itself
757
+
758
+ states.last_mut().unwrap().core.types.push(ty);
759
+ Ok(())
760
+ }
761
+
762
+ fn print_rec(
763
+ &mut self,
764
+ state: &mut State,
765
+ offset: usize,
766
+ types: impl Iterator<Item = SubType>,
767
+ ) -> Result<()> {
768
+ self.start_group("rec");
769
+ for ty in types {
770
+ self.newline(offset + 2);
771
+ self.print_type(state, ty)?;
772
+ }
773
+ self.end_group(); // `rec`
774
+ Ok(())
775
+ }
776
+
777
+ fn print_type(&mut self, state: &mut State, ty: SubType) -> Result<()> {
778
+ self.start_group("type ");
779
+ let ty_idx = state.core.types.len() as u32;
780
+ self.print_name(&state.core.type_names, ty_idx)?;
781
+ self.result.push(' ');
782
+ self.print_sub(state, &ty, ty_idx)?;
783
+ self.end_group(); // `type`
784
+ state.core.types.push(Some(ty));
785
+ Ok(())
786
+ }
787
+
788
+ fn print_sub(&mut self, state: &State, ty: &SubType, ty_idx: u32) -> Result<u32> {
789
+ let r = if !ty.is_final || !ty.supertype_idx.is_none() {
790
+ self.start_group("sub");
791
+ self.print_sub_type(state, ty)?;
792
+ let r = self.print_composite(state, &ty.composite_type, ty_idx)?;
793
+ self.end_group(); // `sub`
794
+ r
795
+ } else {
796
+ self.print_composite(state, &ty.composite_type, ty_idx)?
797
+ };
798
+ Ok(r)
799
+ }
800
+
801
+ fn print_composite(&mut self, state: &State, ty: &CompositeType, ty_idx: u32) -> Result<u32> {
802
+ let r = match &ty {
803
+ CompositeType::Func(ty) => {
804
+ self.start_group("func");
805
+ let r = self.print_func_type(state, ty, None)?;
806
+ self.end_group(); // `func`
807
+ r
808
+ }
809
+ CompositeType::Array(ty) => {
810
+ self.start_group("array");
811
+ let r = self.print_array_type(state, ty)?;
812
+ self.end_group(); // `array`
813
+ r
814
+ }
815
+ CompositeType::Struct(ty) => {
816
+ self.start_group("struct");
817
+ let r = self.print_struct_type(state, ty, ty_idx)?;
818
+ self.end_group(); // `struct`
819
+ r
820
+ }
821
+ };
822
+ Ok(r)
823
+ }
824
+
825
+ fn print_core_types(
826
+ &mut self,
827
+ states: &mut Vec<State>,
828
+ parser: CoreTypeSectionReader<'_>,
829
+ ) -> Result<()> {
830
+ for ty in parser.into_iter_with_offsets() {
831
+ let (offset, ty) = ty?;
832
+ self.newline(offset);
833
+ self.print_core_type(states, ty)?;
834
+ }
835
+
836
+ Ok(())
837
+ }
838
+
839
+ fn print_types(&mut self, state: &mut State, parser: TypeSectionReader<'_>) -> Result<()> {
840
+ for ty in parser.into_iter_with_offsets() {
841
+ let (offset, rec_group) = ty?;
842
+ self.newline(offset);
843
+ if rec_group.is_explicit_rec_group() {
844
+ self.print_rec(state, offset, rec_group.into_types())?
845
+ } else {
846
+ assert_eq!(rec_group.types().len(), 1);
847
+ let ty = rec_group.into_types().next().unwrap();
848
+ self.print_type(state, ty)?;
849
+ }
850
+ }
851
+
852
+ Ok(())
853
+ }
854
+
855
+ fn print_core_functype_idx(
856
+ &mut self,
857
+ state: &State,
858
+ idx: u32,
859
+ names_for: Option<u32>,
860
+ ) -> Result<Option<u32>> {
861
+ self.print_core_type_ref(state, idx)?;
862
+
863
+ match state.core.types.get(idx as usize) {
864
+ Some(Some(SubType {
865
+ composite_type: CompositeType::Func(ty),
866
+ ..
867
+ })) => self.print_func_type(state, ty, names_for).map(Some),
868
+ Some(Some(_)) | Some(None) | None => Ok(None),
869
+ }
870
+ }
871
+
872
+ /// Returns the number of parameters, useful for local index calculations
873
+ /// later.
874
+ fn print_func_type(
875
+ &mut self,
876
+ state: &State,
877
+ ty: &FuncType,
878
+ names_for: Option<u32>,
879
+ ) -> Result<u32> {
880
+ if !ty.params().is_empty() {
881
+ self.result.push(' ');
882
+ }
883
+
884
+ let mut params = NamedLocalPrinter::new("param");
885
+ // Note that named parameters must be alone in a `param` block, so
886
+ // we need to be careful to terminate previous param blocks and open
887
+ // a new one if that's the case with a named parameter.
888
+ for (i, param) in ty.params().iter().enumerate() {
889
+ params.start_local(names_for.unwrap_or(u32::MAX), i as u32, self, state);
890
+ self.print_valtype(state, *param)?;
891
+ params.end_local(&mut self.result);
892
+ }
893
+ params.finish(&mut self.result);
894
+ if !ty.results().is_empty() {
895
+ self.result.push_str(" (result");
896
+ for result in ty.results().iter() {
897
+ self.result.push(' ');
898
+ self.print_valtype(state, *result)?;
899
+ }
900
+ self.result.push(')');
901
+ }
902
+ Ok(ty.params().len() as u32)
903
+ }
904
+
905
+ fn print_field_type(
906
+ &mut self,
907
+ state: &State,
908
+ ty: &FieldType,
909
+ ty_field_idx: Option<(u32, u32)>,
910
+ ) -> Result<u32> {
911
+ self.result.push(' ');
912
+ if let Some(idxs @ (_, field_idx)) = ty_field_idx {
913
+ match state.core.field_names.index_to_name.get(&idxs) {
914
+ Some(name) => write!(self.result, "${} ", name.identifier())?,
915
+ None if self.name_unnamed => write!(self.result, "$#field{field_idx} ")?,
916
+ None => {}
917
+ }
918
+ }
919
+ if ty.mutable {
920
+ self.result.push_str("(mut ");
921
+ }
922
+ self.print_storage_type(state, ty.element_type)?;
923
+ if ty.mutable {
924
+ self.result.push_str(")");
925
+ }
926
+ Ok(0)
927
+ }
928
+
929
+ fn print_array_type(&mut self, state: &State, ty: &ArrayType) -> Result<u32> {
930
+ self.print_field_type(state, &ty.0, None)
931
+ }
932
+
933
+ fn print_struct_type(&mut self, state: &State, ty: &StructType, ty_idx: u32) -> Result<u32> {
934
+ for (field_index, field) in ty.fields.iter().enumerate() {
935
+ self.result.push_str(" (field");
936
+ self.print_field_type(state, field, Some((ty_idx, field_index as u32)))?;
937
+ self.result.push(')');
938
+ }
939
+ Ok(0)
940
+ }
941
+
942
+ fn print_sub_type(&mut self, state: &State, ty: &SubType) -> Result<u32> {
943
+ self.result.push(' ');
944
+ if ty.is_final {
945
+ self.result.push_str("final ");
946
+ }
947
+ for idx in &ty.supertype_idx {
948
+ self.print_idx(&state.core.type_names, idx.as_module_index().unwrap())?;
949
+ self.result.push(' ');
950
+ }
951
+ Ok(0)
952
+ }
953
+
954
+ fn print_storage_type(&mut self, state: &State, ty: StorageType) -> Result<()> {
955
+ match ty {
956
+ StorageType::I8 => self.result.push_str("i8"),
957
+ StorageType::I16 => self.result.push_str("i16"),
958
+ StorageType::Val(val_type) => self.print_valtype(state, val_type)?,
959
+ }
960
+ Ok(())
961
+ }
962
+
963
+ fn print_valtype(&mut self, state: &State, ty: ValType) -> Result<()> {
964
+ match ty {
965
+ ValType::I32 => self.result.push_str("i32"),
966
+ ValType::I64 => self.result.push_str("i64"),
967
+ ValType::F32 => self.result.push_str("f32"),
968
+ ValType::F64 => self.result.push_str("f64"),
969
+ ValType::V128 => self.result.push_str("v128"),
970
+ ValType::Ref(rt) => self.print_reftype(state, rt)?,
971
+ }
972
+ Ok(())
973
+ }
974
+
975
+ fn print_reftype(&mut self, state: &State, ty: RefType) -> Result<()> {
976
+ if ty.is_nullable() {
977
+ match ty.as_non_null() {
978
+ RefType::FUNC => self.result.push_str("funcref"),
979
+ RefType::EXTERN => self.result.push_str("externref"),
980
+ RefType::I31 => self.result.push_str("i31ref"),
981
+ RefType::ANY => self.result.push_str("anyref"),
982
+ RefType::NONE => self.result.push_str("nullref"),
983
+ RefType::NOEXTERN => self.result.push_str("nullexternref"),
984
+ RefType::NOFUNC => self.result.push_str("nullfuncref"),
985
+ RefType::EQ => self.result.push_str("eqref"),
986
+ RefType::STRUCT => self.result.push_str("structref"),
987
+ RefType::ARRAY => self.result.push_str("arrayref"),
988
+ RefType::EXN => self.result.push_str("exnref"),
989
+ RefType::NOEXN => self.result.push_str("nullexnref"),
990
+ _ => {
991
+ self.result.push_str("(ref null ");
992
+ self.print_heaptype(state, ty.heap_type())?;
993
+ self.result.push_str(")");
994
+ }
995
+ }
996
+ } else {
997
+ self.result.push_str("(ref ");
998
+ self.print_heaptype(state, ty.heap_type())?;
999
+ self.result.push_str(")");
1000
+ }
1001
+ Ok(())
1002
+ }
1003
+
1004
+ fn print_heaptype(&mut self, state: &State, ty: HeapType) -> Result<()> {
1005
+ match ty {
1006
+ HeapType::Func => self.result.push_str("func"),
1007
+ HeapType::Extern => self.result.push_str("extern"),
1008
+ HeapType::Any => self.result.push_str("any"),
1009
+ HeapType::None => self.result.push_str("none"),
1010
+ HeapType::NoExtern => self.result.push_str("noextern"),
1011
+ HeapType::NoFunc => self.result.push_str("nofunc"),
1012
+ HeapType::Eq => self.result.push_str("eq"),
1013
+ HeapType::Struct => self.result.push_str("struct"),
1014
+ HeapType::Array => self.result.push_str("array"),
1015
+ HeapType::I31 => self.result.push_str("i31"),
1016
+ HeapType::Exn => self.result.push_str("exn"),
1017
+ HeapType::NoExn => self.result.push_str("noexn"),
1018
+ HeapType::Concrete(i) => {
1019
+ self.print_idx(&state.core.type_names, i.as_module_index().unwrap())?;
1020
+ }
1021
+ }
1022
+ Ok(())
1023
+ }
1024
+
1025
+ fn print_imports(&mut self, state: &mut State, parser: ImportSectionReader<'_>) -> Result<()> {
1026
+ for import in parser.into_iter_with_offsets() {
1027
+ let (offset, import) = import?;
1028
+ self.newline(offset);
1029
+ self.print_import(state, &import, true)?;
1030
+ match import.ty {
1031
+ TypeRef::Func(_) => state.core.funcs += 1,
1032
+ TypeRef::Table(_) => state.core.tables += 1,
1033
+ TypeRef::Memory(_) => state.core.memories += 1,
1034
+ TypeRef::Tag(_) => state.core.tags += 1,
1035
+ TypeRef::Global(_) => state.core.globals += 1,
1036
+ }
1037
+ }
1038
+ Ok(())
1039
+ }
1040
+
1041
+ fn print_import(&mut self, state: &State, import: &Import<'_>, index: bool) -> Result<()> {
1042
+ self.start_group("import ");
1043
+ self.print_str(import.module)?;
1044
+ self.result.push(' ');
1045
+ self.print_str(import.name)?;
1046
+ self.result.push(' ');
1047
+ self.print_import_ty(state, &import.ty, index)?;
1048
+ self.end_group();
1049
+ Ok(())
1050
+ }
1051
+
1052
+ fn print_import_ty(&mut self, state: &State, ty: &TypeRef, index: bool) -> Result<()> {
1053
+ match ty {
1054
+ TypeRef::Func(f) => {
1055
+ self.start_group("func ");
1056
+ if index {
1057
+ self.print_name(&state.core.func_names, state.core.funcs)?;
1058
+ self.result.push(' ');
1059
+ }
1060
+ self.print_core_type_ref(state, *f)?;
1061
+ }
1062
+ TypeRef::Table(f) => self.print_table_type(state, f, index)?,
1063
+ TypeRef::Memory(f) => self.print_memory_type(state, f, index)?,
1064
+ TypeRef::Tag(f) => self.print_tag_type(state, f, index)?,
1065
+ TypeRef::Global(f) => self.print_global_type(state, f, index)?,
1066
+ }
1067
+ self.end_group();
1068
+ Ok(())
1069
+ }
1070
+
1071
+ fn print_table_type(&mut self, state: &State, ty: &TableType, index: bool) -> Result<()> {
1072
+ self.start_group("table ");
1073
+ if index {
1074
+ self.print_name(&state.core.table_names, state.core.tables)?;
1075
+ self.result.push(' ');
1076
+ }
1077
+ if ty.table64 {
1078
+ self.result.push_str("i64 ");
1079
+ }
1080
+ self.print_limits(ty.initial, ty.maximum)?;
1081
+ self.result.push(' ');
1082
+ self.print_reftype(state, ty.element_type)?;
1083
+ Ok(())
1084
+ }
1085
+
1086
+ fn print_memory_type(&mut self, state: &State, ty: &MemoryType, index: bool) -> Result<()> {
1087
+ self.start_group("memory ");
1088
+ if index {
1089
+ self.print_name(&state.core.memory_names, state.core.memories)?;
1090
+ self.result.push(' ');
1091
+ }
1092
+ if ty.memory64 {
1093
+ self.result.push_str("i64 ");
1094
+ }
1095
+ self.print_limits(ty.initial, ty.maximum)?;
1096
+ if ty.shared {
1097
+ self.result.push_str(" shared");
1098
+ }
1099
+ if let Some(p) = ty.page_size_log2 {
1100
+ let p = 1_u64
1101
+ .checked_shl(p)
1102
+ .ok_or_else(|| anyhow!("left shift overflow").context("invalid page size"))?;
1103
+ write!(self.result, "(pagesize {p:#x})")?;
1104
+ }
1105
+ Ok(())
1106
+ }
1107
+
1108
+ fn print_tag_type(&mut self, state: &State, ty: &TagType, index: bool) -> Result<()> {
1109
+ self.start_group("tag ");
1110
+ if index {
1111
+ self.print_name(&state.core.tag_names, state.core.tags)?;
1112
+ self.result.push(' ');
1113
+ }
1114
+ self.print_core_functype_idx(state, ty.func_type_idx, None)?;
1115
+ Ok(())
1116
+ }
1117
+
1118
+ fn print_limits<T>(&mut self, initial: T, maximum: Option<T>) -> Result<()>
1119
+ where
1120
+ T: fmt::Display,
1121
+ {
1122
+ write!(self.result, "{}", initial)?;
1123
+ if let Some(max) = maximum {
1124
+ write!(self.result, " {}", max)?;
1125
+ }
1126
+ Ok(())
1127
+ }
1128
+
1129
+ fn print_global_type(&mut self, state: &State, ty: &GlobalType, index: bool) -> Result<()> {
1130
+ self.start_group("global ");
1131
+ if index {
1132
+ self.print_name(&state.core.global_names, state.core.globals)?;
1133
+ self.result.push(' ');
1134
+ }
1135
+ if ty.shared || ty.mutable {
1136
+ self.result.push('(');
1137
+ if ty.shared {
1138
+ self.result.push_str("shared ");
1139
+ }
1140
+ if ty.mutable {
1141
+ self.result.push_str("mut ");
1142
+ }
1143
+ self.print_valtype(state, ty.content_type)?;
1144
+ self.result.push(')');
1145
+ } else {
1146
+ self.print_valtype(state, ty.content_type)?;
1147
+ }
1148
+ Ok(())
1149
+ }
1150
+
1151
+ fn print_tables(&mut self, state: &mut State, parser: TableSectionReader<'_>) -> Result<()> {
1152
+ for table in parser.into_iter_with_offsets() {
1153
+ let (offset, table) = table?;
1154
+ self.newline(offset);
1155
+ self.print_table_type(state, &table.ty, true)?;
1156
+ match &table.init {
1157
+ TableInit::RefNull => {}
1158
+ TableInit::Expr(expr) => {
1159
+ self.result.push_str(" ");
1160
+ self.print_const_expr(state, expr)?;
1161
+ }
1162
+ }
1163
+ self.end_group();
1164
+ state.core.tables += 1;
1165
+ }
1166
+ Ok(())
1167
+ }
1168
+
1169
+ fn print_memories(&mut self, state: &mut State, parser: MemorySectionReader<'_>) -> Result<()> {
1170
+ for memory in parser.into_iter_with_offsets() {
1171
+ let (offset, memory) = memory?;
1172
+ self.newline(offset);
1173
+ self.print_memory_type(state, &memory, true)?;
1174
+ self.end_group();
1175
+ state.core.memories += 1;
1176
+ }
1177
+ Ok(())
1178
+ }
1179
+
1180
+ fn print_tags(&mut self, state: &mut State, parser: TagSectionReader<'_>) -> Result<()> {
1181
+ for tag in parser.into_iter_with_offsets() {
1182
+ let (offset, tag) = tag?;
1183
+ self.newline(offset);
1184
+ self.print_tag_type(state, &tag, true)?;
1185
+ self.end_group();
1186
+ state.core.tags += 1;
1187
+ }
1188
+ Ok(())
1189
+ }
1190
+
1191
+ fn print_globals(&mut self, state: &mut State, parser: GlobalSectionReader<'_>) -> Result<()> {
1192
+ for global in parser.into_iter_with_offsets() {
1193
+ let (offset, global) = global?;
1194
+ self.newline(offset);
1195
+ self.print_global_type(state, &global.ty, true)?;
1196
+ self.result.push(' ');
1197
+ self.print_const_expr(state, &global.init_expr)?;
1198
+ self.end_group();
1199
+ state.core.globals += 1;
1200
+ }
1201
+ Ok(())
1202
+ }
1203
+
1204
+ fn print_code(
1205
+ &mut self,
1206
+ state: &mut State,
1207
+ code: &[FunctionBody<'_>],
1208
+ funcs: FunctionSectionReader<'_>,
1209
+ ) -> Result<()> {
1210
+ if funcs.count() != code.len() as u32 {
1211
+ bail!("mismatch in function and code section counts");
1212
+ }
1213
+ for (body, ty) in code.iter().zip(funcs) {
1214
+ let mut body = body.get_binary_reader();
1215
+ let offset = body.original_position();
1216
+ let ty = ty?;
1217
+ self.newline(offset);
1218
+ self.start_group("func ");
1219
+ let func_idx = state.core.funcs;
1220
+ self.print_name(&state.core.func_names, func_idx)?;
1221
+ self.result.push(' ');
1222
+ let params = self
1223
+ .print_core_functype_idx(state, ty, Some(func_idx))?
1224
+ .unwrap_or(0);
1225
+
1226
+ // Hints are stored on `self` in reverse order of function index so
1227
+ // check the last one and see if it matches this function.
1228
+ let hints = match self.code_section_hints.last() {
1229
+ Some((f, _)) if *f == func_idx => {
1230
+ let (_, hints) = self.code_section_hints.pop().unwrap();
1231
+ hints
1232
+ }
1233
+ _ => Vec::new(),
1234
+ };
1235
+
1236
+ if self.print_skeleton {
1237
+ self.result.push_str(" ...");
1238
+ } else {
1239
+ self.print_func_body(state, func_idx, params, &mut body, &hints)?;
1240
+ }
1241
+
1242
+ self.end_group();
1243
+
1244
+ state.core.funcs += 1;
1245
+ }
1246
+ Ok(())
1247
+ }
1248
+
1249
+ fn print_func_body(
1250
+ &mut self,
1251
+ state: &mut State,
1252
+ func_idx: u32,
1253
+ params: u32,
1254
+ body: &mut BinaryReader<'_>,
1255
+ mut branch_hints: &[(usize, BranchHint)],
1256
+ ) -> Result<()> {
1257
+ let mut first = true;
1258
+ let mut local_idx = 0;
1259
+ let mut locals = NamedLocalPrinter::new("local");
1260
+ let func_start = body.original_position();
1261
+ for _ in 0..body.read_var_u32()? {
1262
+ let offset = body.original_position();
1263
+ let cnt = body.read_var_u32()?;
1264
+ let ty = body.read()?;
1265
+ if MAX_LOCALS
1266
+ .checked_sub(local_idx)
1267
+ .and_then(|s| s.checked_sub(cnt))
1268
+ .is_none()
1269
+ {
1270
+ bail!("function exceeds the maximum number of locals that can be printed");
1271
+ }
1272
+ for _ in 0..cnt {
1273
+ if first {
1274
+ self.newline(offset);
1275
+ first = false;
1276
+ }
1277
+ locals.start_local(func_idx, params + local_idx, self, state);
1278
+ self.print_valtype(state, ty)?;
1279
+ locals.end_local(&mut self.result);
1280
+ local_idx += 1;
1281
+ }
1282
+ }
1283
+ locals.finish(&mut self.result);
1284
+
1285
+ let nesting_start = self.nesting;
1286
+ body.allow_memarg64(true);
1287
+
1288
+ let mut buf = String::new();
1289
+ let mut op_printer = operator::PrintOperator::new(self, state);
1290
+ while !body.eof() {
1291
+ // Branch hints are stored in increasing order of their body offset
1292
+ // so print them whenever their instruction comes up.
1293
+ if let Some(((hint_offset, hint), rest)) = branch_hints.split_first() {
1294
+ if hint.func_offset == (body.original_position() - func_start) as u32 {
1295
+ branch_hints = rest;
1296
+ op_printer.printer.newline(*hint_offset);
1297
+ let desc = if hint.taken { "\"\\01\"" } else { "\"\\00\"" };
1298
+ write!(
1299
+ op_printer.printer.result,
1300
+ "(@metadata.code.branch_hint {})",
1301
+ desc
1302
+ )?;
1303
+ }
1304
+ }
1305
+
1306
+ let offset = body.original_position();
1307
+ mem::swap(&mut buf, &mut op_printer.printer.result);
1308
+ let op_kind = body.visit_operator(&mut op_printer)??;
1309
+ mem::swap(&mut buf, &mut op_printer.printer.result);
1310
+
1311
+ match op_kind {
1312
+ // The final `end` in a reader is not printed, it's implied
1313
+ // in the text format.
1314
+ operator::OpKind::End if body.eof() => break,
1315
+
1316
+ // When we start a block we newline to the current
1317
+ // indentation, then we increase the indentation so further
1318
+ // instructions are tabbed over.
1319
+ operator::OpKind::BlockStart => {
1320
+ op_printer.printer.newline(offset);
1321
+ op_printer.printer.nesting += 1;
1322
+ }
1323
+
1324
+ // `else`/`catch` are special in that it's printed at
1325
+ // the previous indentation, but it doesn't actually change
1326
+ // our nesting level.
1327
+ operator::OpKind::BlockMid => {
1328
+ op_printer.printer.nesting -= 1;
1329
+ op_printer.printer.newline(offset);
1330
+ op_printer.printer.nesting += 1;
1331
+ }
1332
+
1333
+ // Exiting a block prints `end` at the previous indentation
1334
+ // level.
1335
+ operator::OpKind::End | operator::OpKind::Delegate
1336
+ if op_printer.printer.nesting > nesting_start =>
1337
+ {
1338
+ op_printer.printer.nesting -= 1;
1339
+ op_printer.printer.newline(offset);
1340
+ }
1341
+
1342
+ // .. otherwise everything else just has a normal newline
1343
+ // out in front.
1344
+ _ => op_printer.printer.newline(offset),
1345
+ }
1346
+ op_printer.printer.result.push_str(&buf);
1347
+ buf.truncate(0);
1348
+ }
1349
+
1350
+ // If this was an invalid function body then the nesting may not
1351
+ // have reset back to normal. Fix that up here and forcibly insert
1352
+ // a newline as well in case the last instruction was something
1353
+ // like an `if` which has a comment after it which could interfere
1354
+ // with the closing paren printed for the func.
1355
+ if self.nesting != nesting_start {
1356
+ self.nesting = nesting_start;
1357
+ self.newline(body.original_position());
1358
+ }
1359
+
1360
+ Ok(())
1361
+ }
1362
+
1363
+ fn newline(&mut self, offset: usize) {
1364
+ self.print_newline(Some(offset))
1365
+ }
1366
+
1367
+ fn newline_unknown_pos(&mut self) {
1368
+ self.print_newline(None)
1369
+ }
1370
+
1371
+ fn print_newline(&mut self, offset: Option<usize>) {
1372
+ self.result.push('\n');
1373
+
1374
+ self.lines.push(self.result.len());
1375
+ self.line_offsets.push(offset);
1376
+
1377
+ if self.print_offsets {
1378
+ match offset {
1379
+ Some(offset) => write!(self.result, "(;@{offset:<6x};)").unwrap(),
1380
+ None => self.result.push_str(" "),
1381
+ }
1382
+ }
1383
+ self.line += 1;
1384
+
1385
+ // Clamp the maximum nesting size that we print at something somewhat
1386
+ // reasonable to avoid generating hundreds of megabytes of whitespace
1387
+ // for small-ish modules that have deep-ish nesting.
1388
+ for _ in 0..self.nesting.min(MAX_NESTING_TO_PRINT) {
1389
+ self.result.push_str(" ");
1390
+ }
1391
+ }
1392
+
1393
+ fn print_exports(&mut self, state: &State, data: ExportSectionReader) -> Result<()> {
1394
+ for export in data.into_iter_with_offsets() {
1395
+ let (offset, export) = export?;
1396
+ self.newline(offset);
1397
+ self.print_export(state, &export)?;
1398
+ }
1399
+ Ok(())
1400
+ }
1401
+
1402
+ fn print_export(&mut self, state: &State, export: &Export) -> Result<()> {
1403
+ self.start_group("export ");
1404
+ self.print_str(export.name)?;
1405
+ self.result.push(' ');
1406
+ self.print_external_kind(state, export.kind, export.index)?;
1407
+ self.end_group(); // export
1408
+ Ok(())
1409
+ }
1410
+
1411
+ fn print_external_kind(&mut self, state: &State, kind: ExternalKind, index: u32) -> Result<()> {
1412
+ self.result.push('(');
1413
+ match kind {
1414
+ ExternalKind::Func => {
1415
+ self.result.push_str("func ");
1416
+ self.print_idx(&state.core.func_names, index)?;
1417
+ }
1418
+ ExternalKind::Table => {
1419
+ self.result.push_str("table ");
1420
+ self.print_idx(&state.core.table_names, index)?;
1421
+ }
1422
+ ExternalKind::Global => {
1423
+ self.result.push_str("global ");
1424
+ self.print_idx(&state.core.global_names, index)?;
1425
+ }
1426
+ ExternalKind::Memory => {
1427
+ self.result.push_str("memory ");
1428
+ self.print_idx(&state.core.memory_names, index)?;
1429
+ }
1430
+ ExternalKind::Tag => write!(self.result, "tag {}", index)?,
1431
+ }
1432
+ self.result.push(')');
1433
+ Ok(())
1434
+ }
1435
+
1436
+ fn print_core_type_ref(&mut self, state: &State, idx: u32) -> Result<()> {
1437
+ self.result.push_str("(type ");
1438
+ self.print_idx(&state.core.type_names, idx)?;
1439
+ self.result.push(')');
1440
+ Ok(())
1441
+ }
1442
+
1443
+ fn print_component_type_ref(&mut self, state: &State, idx: u32) -> Result<()> {
1444
+ self.result.push_str("(type ");
1445
+ self.print_idx(&state.component.type_names, idx)?;
1446
+ self.result.push(')');
1447
+ Ok(())
1448
+ }
1449
+
1450
+ fn print_idx<K>(&mut self, names: &NamingMap<u32, K>, idx: u32) -> Result<()>
1451
+ where
1452
+ K: NamingNamespace,
1453
+ {
1454
+ self._print_idx(&names.index_to_name, idx, K::desc())
1455
+ }
1456
+
1457
+ fn _print_idx(&mut self, names: &HashMap<u32, Naming>, idx: u32, desc: &str) -> Result<()> {
1458
+ match names.get(&idx) {
1459
+ Some(name) => write!(self.result, "${}", name.identifier())?,
1460
+ None if self.name_unnamed => write!(self.result, "$#{desc}{idx}")?,
1461
+ None => write!(self.result, "{idx}")?,
1462
+ }
1463
+ Ok(())
1464
+ }
1465
+
1466
+ fn print_local_idx(&mut self, state: &State, func: u32, idx: u32) -> Result<()> {
1467
+ match state.core.local_names.index_to_name.get(&(func, idx)) {
1468
+ Some(name) => write!(self.result, "${}", name.identifier())?,
1469
+ None if self.name_unnamed => write!(self.result, "$#local{idx}")?,
1470
+ None => write!(self.result, "{}", idx)?,
1471
+ }
1472
+ Ok(())
1473
+ }
1474
+
1475
+ fn print_field_idx(&mut self, state: &State, ty: u32, idx: u32) -> Result<()> {
1476
+ match state.core.field_names.index_to_name.get(&(ty, idx)) {
1477
+ Some(name) => write!(self.result, "${}", name.identifier())?,
1478
+ None if self.name_unnamed => write!(self.result, "$#field{idx}")?,
1479
+ None => write!(self.result, "{}", idx)?,
1480
+ }
1481
+ Ok(())
1482
+ }
1483
+
1484
+ fn print_name<K>(&mut self, names: &NamingMap<u32, K>, cur_idx: u32) -> Result<()>
1485
+ where
1486
+ K: NamingNamespace,
1487
+ {
1488
+ self._print_name(&names.index_to_name, cur_idx, K::desc())
1489
+ }
1490
+
1491
+ fn _print_name(
1492
+ &mut self,
1493
+ names: &HashMap<u32, Naming>,
1494
+ cur_idx: u32,
1495
+ desc: &str,
1496
+ ) -> Result<()> {
1497
+ match names.get(&cur_idx) {
1498
+ Some(name) => {
1499
+ name.write(&mut self.result);
1500
+ self.result.push(' ');
1501
+ }
1502
+ None if self.name_unnamed => {
1503
+ write!(self.result, "$#{desc}{cur_idx} ")?;
1504
+ }
1505
+ None => {}
1506
+ }
1507
+ write!(self.result, "(;{cur_idx};)")?;
1508
+ Ok(())
1509
+ }
1510
+
1511
+ fn print_elems(&mut self, state: &mut State, data: ElementSectionReader) -> Result<()> {
1512
+ for (i, elem) in data.into_iter_with_offsets().enumerate() {
1513
+ let (offset, mut elem) = elem?;
1514
+ self.newline(offset);
1515
+ self.start_group("elem ");
1516
+ self.print_name(&state.core.element_names, i as u32)?;
1517
+ match &mut elem.kind {
1518
+ ElementKind::Passive => {}
1519
+ ElementKind::Declared => write!(self.result, " declare")?,
1520
+ ElementKind::Active {
1521
+ table_index,
1522
+ offset_expr,
1523
+ } => {
1524
+ let table_index = table_index.unwrap_or(0);
1525
+ if table_index != 0 {
1526
+ self.result.push_str(" (table ");
1527
+ self.print_idx(&state.core.table_names, table_index)?;
1528
+ self.result.push(')');
1529
+ }
1530
+ self.result.push(' ');
1531
+ self.print_const_expr_sugar(state, offset_expr, "offset")?;
1532
+ }
1533
+ }
1534
+ self.result.push(' ');
1535
+
1536
+ if self.print_skeleton {
1537
+ self.result.push_str("...");
1538
+ } else {
1539
+ match elem.items {
1540
+ ElementItems::Functions(reader) => {
1541
+ self.result.push_str("func");
1542
+ for idx in reader {
1543
+ self.result.push(' ');
1544
+ self.print_idx(&state.core.func_names, idx?)?
1545
+ }
1546
+ }
1547
+ ElementItems::Expressions(ty, reader) => {
1548
+ self.print_reftype(state, ty)?;
1549
+ for expr in reader {
1550
+ self.result.push(' ');
1551
+ self.print_const_expr_sugar(state, &expr?, "item")?
1552
+ }
1553
+ }
1554
+ }
1555
+ }
1556
+ self.end_group();
1557
+ }
1558
+ Ok(())
1559
+ }
1560
+
1561
+ fn print_data(&mut self, state: &mut State, data: DataSectionReader) -> Result<()> {
1562
+ for (i, data) in data.into_iter_with_offsets().enumerate() {
1563
+ let (offset, data) = data?;
1564
+ self.newline(offset);
1565
+ self.start_group("data ");
1566
+ self.print_name(&state.core.data_names, i as u32)?;
1567
+ self.result.push(' ');
1568
+ match &data.kind {
1569
+ DataKind::Passive => {}
1570
+ DataKind::Active {
1571
+ memory_index,
1572
+ offset_expr,
1573
+ } => {
1574
+ if *memory_index != 0 {
1575
+ self.result.push_str("(memory ");
1576
+ self.print_idx(&state.core.memory_names, *memory_index)?;
1577
+ self.result.push_str(") ");
1578
+ }
1579
+ self.print_const_expr_sugar(state, offset_expr, "offset")?;
1580
+ self.result.push(' ');
1581
+ }
1582
+ }
1583
+ if self.print_skeleton {
1584
+ self.result.push_str("...");
1585
+ } else {
1586
+ self.print_bytes(data.data)?;
1587
+ }
1588
+ self.end_group();
1589
+ }
1590
+ Ok(())
1591
+ }
1592
+
1593
+ /// Prints the operators of `expr` space-separated, taking into account that
1594
+ /// if there's only one operator in `expr` then instead of `(explicit ...)`
1595
+ /// the printing can be `(...)`.
1596
+ fn print_const_expr_sugar(
1597
+ &mut self,
1598
+ state: &mut State,
1599
+ expr: &ConstExpr,
1600
+ explicit: &str,
1601
+ ) -> Result<()> {
1602
+ self.start_group("");
1603
+ let mut prev = mem::take(&mut self.result);
1604
+ let mut reader = expr.get_operators_reader();
1605
+ let mut op_printer = operator::PrintOperator::new(self, state);
1606
+ let mut first_op = None;
1607
+ for i in 0.. {
1608
+ if reader.eof() {
1609
+ break;
1610
+ }
1611
+ match reader.visit_operator(&mut op_printer)?? {
1612
+ operator::OpKind::End if reader.eof() => {}
1613
+
1614
+ _ if i == 0 => first_op = Some(mem::take(&mut op_printer.printer.result)),
1615
+
1616
+ _ => {
1617
+ if i == 1 {
1618
+ prev.push_str(explicit);
1619
+ prev.push(' ');
1620
+ prev.push_str(&first_op.take().unwrap());
1621
+ }
1622
+ prev.push(' ');
1623
+ prev.push_str(&op_printer.printer.result);
1624
+ }
1625
+ }
1626
+
1627
+ op_printer.printer.result.truncate(0);
1628
+ }
1629
+
1630
+ // If `first_op` is still set here then it means we don't need to print
1631
+ // an expression with `explicit` as the leading token, instead we can
1632
+ // print the single operator.
1633
+ if let Some(op) = first_op {
1634
+ prev.push_str(&op);
1635
+ }
1636
+ self.result = prev;
1637
+ self.end_group();
1638
+ Ok(())
1639
+ }
1640
+
1641
+ /// Prints the operators of `expr` space-separated.
1642
+ fn print_const_expr(&mut self, state: &mut State, expr: &ConstExpr) -> Result<()> {
1643
+ let mut reader = expr.get_operators_reader();
1644
+ let mut first = true;
1645
+
1646
+ let mut result = mem::take(&mut self.result);
1647
+ let mut op_printer = operator::PrintOperator::new(self, state);
1648
+ while !reader.eof() {
1649
+ if first {
1650
+ first = false;
1651
+ } else {
1652
+ op_printer.printer.result.push(' ');
1653
+ }
1654
+ match reader.visit_operator(&mut op_printer)?? {
1655
+ operator::OpKind::End if reader.eof() => {}
1656
+ _ => {
1657
+ result.push_str(&op_printer.printer.result);
1658
+ op_printer.printer.result.truncate(0);
1659
+ }
1660
+ }
1661
+ }
1662
+ self.result = result;
1663
+ Ok(())
1664
+ }
1665
+
1666
+ fn print_primitive_val_type(&mut self, ty: &PrimitiveValType) {
1667
+ match ty {
1668
+ PrimitiveValType::Bool => self.result.push_str("bool"),
1669
+ PrimitiveValType::S8 => self.result.push_str("s8"),
1670
+ PrimitiveValType::U8 => self.result.push_str("u8"),
1671
+ PrimitiveValType::S16 => self.result.push_str("s16"),
1672
+ PrimitiveValType::U16 => self.result.push_str("u16"),
1673
+ PrimitiveValType::S32 => self.result.push_str("s32"),
1674
+ PrimitiveValType::U32 => self.result.push_str("u32"),
1675
+ PrimitiveValType::S64 => self.result.push_str("s64"),
1676
+ PrimitiveValType::U64 => self.result.push_str("u64"),
1677
+ PrimitiveValType::F32 => self.result.push_str("f32"),
1678
+ PrimitiveValType::F64 => self.result.push_str("f64"),
1679
+ PrimitiveValType::Char => self.result.push_str("char"),
1680
+ PrimitiveValType::String => self.result.push_str("string"),
1681
+ }
1682
+ }
1683
+
1684
+ fn print_record_type(
1685
+ &mut self,
1686
+ state: &State,
1687
+ fields: &[(&str, ComponentValType)],
1688
+ ) -> Result<()> {
1689
+ self.start_group("record");
1690
+ for (name, ty) in fields.iter() {
1691
+ self.result.push(' ');
1692
+ self.start_group("field ");
1693
+ self.print_str(name)?;
1694
+ self.result.push(' ');
1695
+ self.print_component_val_type(state, ty)?;
1696
+ self.end_group()
1697
+ }
1698
+ self.end_group();
1699
+ Ok(())
1700
+ }
1701
+
1702
+ fn print_variant_type(&mut self, state: &State, cases: &[VariantCase]) -> Result<()> {
1703
+ self.start_group("variant");
1704
+ for case in cases {
1705
+ self.result.push(' ');
1706
+ self.start_group("case ");
1707
+ self.print_str(case.name)?;
1708
+
1709
+ if let Some(ty) = case.ty {
1710
+ self.result.push(' ');
1711
+ self.print_component_val_type(state, &ty)?;
1712
+ }
1713
+
1714
+ if let Some(refines) = case.refines {
1715
+ self.result.push(' ');
1716
+ self.start_group("refines ");
1717
+ write!(&mut self.result, "{}", refines)?;
1718
+ self.end_group();
1719
+ }
1720
+ self.end_group()
1721
+ }
1722
+ self.end_group();
1723
+
1724
+ Ok(())
1725
+ }
1726
+
1727
+ fn print_list_type(&mut self, state: &State, element_ty: &ComponentValType) -> Result<()> {
1728
+ self.start_group("list ");
1729
+ self.print_component_val_type(state, element_ty)?;
1730
+ self.end_group();
1731
+ Ok(())
1732
+ }
1733
+
1734
+ fn print_tuple_type(&mut self, state: &State, tys: &[ComponentValType]) -> Result<()> {
1735
+ self.start_group("tuple");
1736
+ for ty in tys {
1737
+ self.result.push(' ');
1738
+ self.print_component_val_type(state, ty)?;
1739
+ }
1740
+ self.end_group();
1741
+ Ok(())
1742
+ }
1743
+
1744
+ fn print_flag_or_enum_type(&mut self, ty: &str, names: &[&str]) -> Result<()> {
1745
+ self.start_group(ty);
1746
+ for name in names {
1747
+ self.result.push(' ');
1748
+ self.print_str(name)?;
1749
+ }
1750
+ self.end_group();
1751
+ Ok(())
1752
+ }
1753
+
1754
+ fn print_option_type(&mut self, state: &State, inner: &ComponentValType) -> Result<()> {
1755
+ self.start_group("option ");
1756
+ self.print_component_val_type(state, inner)?;
1757
+ self.end_group();
1758
+ Ok(())
1759
+ }
1760
+
1761
+ fn print_result_type(
1762
+ &mut self,
1763
+ state: &State,
1764
+ ok: Option<ComponentValType>,
1765
+ err: Option<ComponentValType>,
1766
+ ) -> Result<()> {
1767
+ self.start_group("result");
1768
+
1769
+ if let Some(ok) = ok {
1770
+ self.result.push(' ');
1771
+ self.print_component_val_type(state, &ok)?;
1772
+ }
1773
+
1774
+ if let Some(err) = err {
1775
+ self.result.push(' ');
1776
+ self.start_group("error ");
1777
+ self.print_component_val_type(state, &err)?;
1778
+ self.end_group();
1779
+ }
1780
+
1781
+ self.end_group();
1782
+
1783
+ Ok(())
1784
+ }
1785
+
1786
+ fn print_defined_type(&mut self, state: &State, ty: &ComponentDefinedType) -> Result<()> {
1787
+ match ty {
1788
+ ComponentDefinedType::Primitive(ty) => self.print_primitive_val_type(ty),
1789
+ ComponentDefinedType::Record(fields) => self.print_record_type(state, fields)?,
1790
+ ComponentDefinedType::Variant(cases) => self.print_variant_type(state, cases)?,
1791
+ ComponentDefinedType::List(ty) => self.print_list_type(state, ty)?,
1792
+ ComponentDefinedType::Tuple(tys) => self.print_tuple_type(state, tys)?,
1793
+ ComponentDefinedType::Flags(names) => self.print_flag_or_enum_type("flags", names)?,
1794
+ ComponentDefinedType::Enum(cases) => self.print_flag_or_enum_type("enum", cases)?,
1795
+ ComponentDefinedType::Option(ty) => self.print_option_type(state, ty)?,
1796
+ ComponentDefinedType::Result { ok, err } => self.print_result_type(state, *ok, *err)?,
1797
+ ComponentDefinedType::Own(idx) => {
1798
+ self.start_group("own ");
1799
+ self.print_idx(&state.component.type_names, *idx)?;
1800
+ self.end_group();
1801
+ }
1802
+ ComponentDefinedType::Borrow(idx) => {
1803
+ self.start_group("borrow ");
1804
+ self.print_idx(&state.component.type_names, *idx)?;
1805
+ self.end_group();
1806
+ }
1807
+ }
1808
+
1809
+ Ok(())
1810
+ }
1811
+
1812
+ fn print_component_val_type(&mut self, state: &State, ty: &ComponentValType) -> Result<()> {
1813
+ match ty {
1814
+ ComponentValType::Primitive(ty) => self.print_primitive_val_type(ty),
1815
+ ComponentValType::Type(idx) => {
1816
+ self.print_idx(&state.component.type_names, *idx)?;
1817
+ }
1818
+ }
1819
+
1820
+ Ok(())
1821
+ }
1822
+
1823
+ fn print_module_type(
1824
+ &mut self,
1825
+ states: &mut Vec<State>,
1826
+ decls: Vec<ModuleTypeDeclaration>,
1827
+ ) -> Result<()> {
1828
+ states.push(State::new(Encoding::Module));
1829
+ self.newline_unknown_pos();
1830
+ self.start_group("module");
1831
+ for decl in decls {
1832
+ self.newline_unknown_pos();
1833
+ match decl {
1834
+ ModuleTypeDeclaration::Type(ty) => {
1835
+ self.print_type(states.last_mut().unwrap(), ty)?
1836
+ }
1837
+ ModuleTypeDeclaration::OuterAlias { kind, count, index } => {
1838
+ self.print_outer_alias(states, kind, count, index)?;
1839
+ }
1840
+ ModuleTypeDeclaration::Export { name, ty } => {
1841
+ self.start_group("export ");
1842
+ self.print_str(name)?;
1843
+ self.result.push(' ');
1844
+ self.print_import_ty(states.last_mut().unwrap(), &ty, false)?;
1845
+ self.end_group();
1846
+ }
1847
+ ModuleTypeDeclaration::Import(import) => {
1848
+ self.print_import(states.last_mut().unwrap(), &import, false)?;
1849
+ }
1850
+ }
1851
+ }
1852
+ self.end_group();
1853
+ states.pop();
1854
+ Ok(())
1855
+ }
1856
+
1857
+ fn print_component_type<'a>(
1858
+ &mut self,
1859
+ states: &mut Vec<State>,
1860
+ decls: Vec<ComponentTypeDeclaration<'a>>,
1861
+ ) -> Result<()> {
1862
+ states.push(State::new(Encoding::Component));
1863
+ self.newline_unknown_pos();
1864
+ self.start_group("component");
1865
+ for decl in decls {
1866
+ self.newline_unknown_pos();
1867
+ match decl {
1868
+ ComponentTypeDeclaration::CoreType(ty) => self.print_core_type(states, ty)?,
1869
+ ComponentTypeDeclaration::Type(ty) => self.print_component_type_def(states, ty)?,
1870
+ ComponentTypeDeclaration::Alias(alias) => {
1871
+ self.print_component_alias(states, alias)?;
1872
+ }
1873
+ ComponentTypeDeclaration::Export { name, ty } => {
1874
+ self.start_group("export ");
1875
+ self.print_component_kind_name(states.last_mut().unwrap(), ty.kind())?;
1876
+ self.result.push(' ');
1877
+ self.print_str(name.0)?;
1878
+ self.result.push(' ');
1879
+ self.print_component_import_ty(states.last_mut().unwrap(), &ty, false)?;
1880
+ self.end_group();
1881
+ }
1882
+ ComponentTypeDeclaration::Import(import) => {
1883
+ self.print_component_import(states.last_mut().unwrap(), &import, true)?
1884
+ }
1885
+ }
1886
+ }
1887
+ self.end_group();
1888
+ states.pop().unwrap();
1889
+ Ok(())
1890
+ }
1891
+
1892
+ fn print_instance_type<'a>(
1893
+ &mut self,
1894
+ states: &mut Vec<State>,
1895
+ decls: Vec<InstanceTypeDeclaration<'a>>,
1896
+ ) -> Result<()> {
1897
+ states.push(State::new(Encoding::Component));
1898
+ self.newline_unknown_pos();
1899
+ self.start_group("instance");
1900
+ for decl in decls {
1901
+ self.newline_unknown_pos();
1902
+ match decl {
1903
+ InstanceTypeDeclaration::CoreType(ty) => self.print_core_type(states, ty)?,
1904
+ InstanceTypeDeclaration::Type(ty) => self.print_component_type_def(states, ty)?,
1905
+ InstanceTypeDeclaration::Alias(alias) => {
1906
+ self.print_component_alias(states, alias)?;
1907
+ }
1908
+ InstanceTypeDeclaration::Export { name, ty } => {
1909
+ self.start_group("export ");
1910
+ self.print_component_kind_name(states.last_mut().unwrap(), ty.kind())?;
1911
+ self.result.push(' ');
1912
+ self.print_str(name.0)?;
1913
+ self.result.push(' ');
1914
+ self.print_component_import_ty(states.last_mut().unwrap(), &ty, false)?;
1915
+ self.end_group();
1916
+ }
1917
+ }
1918
+ }
1919
+ self.end_group();
1920
+ states.pop().unwrap();
1921
+ Ok(())
1922
+ }
1923
+
1924
+ fn outer_state(states: &[State], count: u32) -> Result<&State> {
1925
+ let count = count as usize;
1926
+ if count >= states.len() {
1927
+ bail!("invalid outer alias count of {}", count);
1928
+ }
1929
+
1930
+ Ok(&states[states.len() - count - 1])
1931
+ }
1932
+
1933
+ fn print_outer_alias(
1934
+ &mut self,
1935
+ states: &mut [State],
1936
+ kind: OuterAliasKind,
1937
+ count: u32,
1938
+ index: u32,
1939
+ ) -> Result<()> {
1940
+ let state = states.last().unwrap();
1941
+ let outer = Self::outer_state(states, count)?;
1942
+ self.start_group("alias outer ");
1943
+ if let Some(name) = outer.name.as_ref() {
1944
+ name.write(&mut self.result);
1945
+ } else {
1946
+ self.result.push_str(count.to_string().as_str());
1947
+ }
1948
+ self.result.push(' ');
1949
+ match kind {
1950
+ OuterAliasKind::Type => {
1951
+ self.print_idx(&outer.core.type_names, index)?;
1952
+ self.result.push(' ');
1953
+ self.start_group("type ");
1954
+ self.print_name(&state.core.type_names, state.core.types.len() as u32)?;
1955
+ }
1956
+ }
1957
+ self.end_group(); // kind
1958
+ self.end_group(); // alias
1959
+
1960
+ let state = states.last_mut().unwrap();
1961
+ match kind {
1962
+ OuterAliasKind::Type => state.core.types.push(None),
1963
+ }
1964
+
1965
+ Ok(())
1966
+ }
1967
+
1968
+ fn print_component_func_type(&mut self, state: &State, ty: &ComponentFuncType) -> Result<()> {
1969
+ self.start_group("func");
1970
+ for (name, ty) in ty.params.iter() {
1971
+ self.result.push(' ');
1972
+ self.start_group("param ");
1973
+ self.print_str(name)?;
1974
+ self.result.push(' ');
1975
+ self.print_component_val_type(state, ty)?;
1976
+ self.end_group()
1977
+ }
1978
+
1979
+ for (name, ty) in ty.results.iter() {
1980
+ self.result.push(' ');
1981
+ self.start_group("result ");
1982
+ if let Some(name) = name {
1983
+ self.print_str(name)?;
1984
+ self.result.push(' ');
1985
+ }
1986
+ self.print_component_val_type(state, ty)?;
1987
+ self.end_group()
1988
+ }
1989
+
1990
+ self.end_group();
1991
+
1992
+ Ok(())
1993
+ }
1994
+
1995
+ fn print_component_type_def<'a>(
1996
+ &mut self,
1997
+ states: &mut Vec<State>,
1998
+ ty: ComponentType<'a>,
1999
+ ) -> Result<()> {
2000
+ self.start_group("type ");
2001
+ {
2002
+ let state = states.last_mut().unwrap();
2003
+ self.print_name(&state.component.type_names, state.component.types)?;
2004
+ }
2005
+ match ty {
2006
+ ComponentType::Defined(ty) => {
2007
+ self.result.push(' ');
2008
+ self.print_defined_type(states.last_mut().unwrap(), &ty)?;
2009
+ }
2010
+ ComponentType::Func(ty) => {
2011
+ self.result.push(' ');
2012
+ self.print_component_func_type(states.last_mut().unwrap(), &ty)?;
2013
+ }
2014
+ ComponentType::Component(decls) => {
2015
+ self.print_component_type(states, decls.into_vec())?;
2016
+ }
2017
+ ComponentType::Instance(decls) => {
2018
+ self.print_instance_type(states, decls.into_vec())?;
2019
+ }
2020
+ ComponentType::Resource { rep, dtor } => {
2021
+ self.result.push_str(" ");
2022
+ self.start_group("resource");
2023
+ self.result.push_str(" (rep ");
2024
+ self.print_valtype(states.last().unwrap(), rep)?;
2025
+ self.result.push_str(")");
2026
+ if let Some(dtor) = dtor {
2027
+ self.result.push_str(" (dtor (func ");
2028
+ self.print_idx(&states.last().unwrap().core.func_names, dtor)?;
2029
+ self.result.push_str("))");
2030
+ }
2031
+ self.end_group();
2032
+ }
2033
+ }
2034
+ self.end_group();
2035
+
2036
+ states.last_mut().unwrap().component.types += 1;
2037
+
2038
+ Ok(())
2039
+ }
2040
+
2041
+ fn print_component_types<'a>(
2042
+ &mut self,
2043
+ states: &mut Vec<State>,
2044
+ parser: ComponentTypeSectionReader<'a>,
2045
+ ) -> Result<()> {
2046
+ for ty in parser.into_iter_with_offsets() {
2047
+ let (offset, ty) = ty?;
2048
+ self.newline(offset);
2049
+ self.print_component_type_def(states, ty)?;
2050
+ }
2051
+
2052
+ Ok(())
2053
+ }
2054
+
2055
+ fn print_component_imports(
2056
+ &mut self,
2057
+ state: &mut State,
2058
+ parser: ComponentImportSectionReader,
2059
+ ) -> Result<()> {
2060
+ for import in parser.into_iter_with_offsets() {
2061
+ let (offset, import) = import?;
2062
+ self.newline(offset);
2063
+ self.print_component_import(state, &import, true)?;
2064
+ }
2065
+
2066
+ Ok(())
2067
+ }
2068
+
2069
+ fn print_component_import(
2070
+ &mut self,
2071
+ state: &mut State,
2072
+ import: &ComponentImport,
2073
+ index: bool,
2074
+ ) -> Result<()> {
2075
+ self.start_group("import ");
2076
+ self.print_str(import.name.0)?;
2077
+ self.result.push(' ');
2078
+ self.print_component_import_ty(state, &import.ty, index)?;
2079
+ self.end_group();
2080
+ Ok(())
2081
+ }
2082
+
2083
+ fn print_component_import_ty(
2084
+ &mut self,
2085
+ state: &mut State,
2086
+ ty: &ComponentTypeRef,
2087
+ index: bool,
2088
+ ) -> Result<()> {
2089
+ match ty {
2090
+ ComponentTypeRef::Module(idx) => {
2091
+ self.start_group("core module ");
2092
+ if index {
2093
+ self.print_name(&state.core.module_names, state.core.modules as u32)?;
2094
+ self.result.push(' ');
2095
+ state.core.modules += 1;
2096
+ }
2097
+ self.print_component_type_ref(state, *idx)?;
2098
+ self.end_group();
2099
+ }
2100
+ ComponentTypeRef::Func(idx) => {
2101
+ self.start_group("func ");
2102
+ if index {
2103
+ self.print_name(&state.component.func_names, state.component.funcs)?;
2104
+ self.result.push(' ');
2105
+ state.component.funcs += 1;
2106
+ }
2107
+ self.print_component_type_ref(state, *idx)?;
2108
+ self.end_group();
2109
+ }
2110
+ ComponentTypeRef::Value(ty) => {
2111
+ self.start_group("value ");
2112
+ if index {
2113
+ self.print_name(&state.component.value_names, state.component.values)?;
2114
+ self.result.push(' ');
2115
+ state.component.values += 1;
2116
+ }
2117
+ match ty {
2118
+ ComponentValType::Primitive(ty) => self.print_primitive_val_type(ty),
2119
+ ComponentValType::Type(idx) => {
2120
+ self.print_component_type_ref(state, *idx)?;
2121
+ }
2122
+ }
2123
+ self.end_group();
2124
+ }
2125
+ ComponentTypeRef::Type(bounds) => {
2126
+ self.result.push_str("(type ");
2127
+ if index {
2128
+ self.print_name(&state.component.type_names, state.component.types)?;
2129
+ self.result.push(' ');
2130
+ state.component.types += 1;
2131
+ }
2132
+ match bounds {
2133
+ TypeBounds::Eq(idx) => {
2134
+ self.result.push_str("(eq ");
2135
+ self.print_idx(&state.component.type_names, *idx)?;
2136
+ self.result.push(')');
2137
+ }
2138
+ TypeBounds::SubResource => {
2139
+ self.result.push_str("(sub resource)");
2140
+ }
2141
+ };
2142
+ self.result.push(')');
2143
+ }
2144
+ ComponentTypeRef::Instance(idx) => {
2145
+ self.start_group("instance ");
2146
+ if index {
2147
+ self.print_name(&state.component.instance_names, state.component.instances)?;
2148
+ self.result.push(' ');
2149
+ state.component.instances += 1;
2150
+ }
2151
+ self.print_component_type_ref(state, *idx)?;
2152
+ self.end_group();
2153
+ }
2154
+ ComponentTypeRef::Component(idx) => {
2155
+ self.start_group("component ");
2156
+ if index {
2157
+ self.print_name(&state.component.component_names, state.component.components)?;
2158
+ self.result.push(' ');
2159
+ state.component.components += 1;
2160
+ }
2161
+ self.print_component_type_ref(state, *idx)?;
2162
+ self.end_group();
2163
+ }
2164
+ }
2165
+ Ok(())
2166
+ }
2167
+
2168
+ fn print_component_exports(
2169
+ &mut self,
2170
+ state: &mut State,
2171
+ parser: ComponentExportSectionReader,
2172
+ ) -> Result<()> {
2173
+ for export in parser.into_iter_with_offsets() {
2174
+ let (offset, export) = export?;
2175
+ self.newline(offset);
2176
+ self.print_component_export(state, &export, true)?;
2177
+ }
2178
+ Ok(())
2179
+ }
2180
+
2181
+ fn print_component_export(
2182
+ &mut self,
2183
+ state: &mut State,
2184
+ export: &ComponentExport,
2185
+ named: bool,
2186
+ ) -> Result<()> {
2187
+ self.start_group("export ");
2188
+ if named {
2189
+ self.print_component_kind_name(state, export.kind)?;
2190
+ self.result.push(' ');
2191
+ }
2192
+ self.print_str(export.name.0)?;
2193
+ self.result.push(' ');
2194
+ self.print_component_external_kind(state, export.kind, export.index)?;
2195
+ if let Some(ty) = &export.ty {
2196
+ self.result.push(' ');
2197
+ self.print_component_import_ty(state, &ty, false)?;
2198
+ }
2199
+ self.end_group();
2200
+ Ok(())
2201
+ }
2202
+
2203
+ fn print_component_kind_name(
2204
+ &mut self,
2205
+ state: &mut State,
2206
+ kind: ComponentExternalKind,
2207
+ ) -> Result<()> {
2208
+ match kind {
2209
+ ComponentExternalKind::Func => {
2210
+ self.print_name(&state.component.func_names, state.component.funcs)?;
2211
+ state.component.funcs += 1;
2212
+ }
2213
+ ComponentExternalKind::Module => {
2214
+ self.print_name(&state.core.module_names, state.core.modules)?;
2215
+ state.core.modules += 1;
2216
+ }
2217
+ ComponentExternalKind::Value => {
2218
+ self.print_name(&state.component.value_names, state.component.values)?;
2219
+ state.component.values += 1;
2220
+ }
2221
+ ComponentExternalKind::Type => {
2222
+ self.print_name(&state.component.type_names, state.component.types)?;
2223
+ state.component.types += 1;
2224
+ }
2225
+ ComponentExternalKind::Instance => {
2226
+ self.print_name(&state.component.instance_names, state.component.instances)?;
2227
+ state.component.instances += 1;
2228
+ }
2229
+ ComponentExternalKind::Component => {
2230
+ self.print_name(&state.component.component_names, state.component.components)?;
2231
+ state.component.components += 1;
2232
+ }
2233
+ }
2234
+ Ok(())
2235
+ }
2236
+
2237
+ fn start_component_external_kind_group(&mut self, kind: ComponentExternalKind) -> Result<()> {
2238
+ match kind {
2239
+ ComponentExternalKind::Module => {
2240
+ self.start_group("core module ");
2241
+ }
2242
+ ComponentExternalKind::Component => {
2243
+ self.start_group("component ");
2244
+ }
2245
+ ComponentExternalKind::Instance => {
2246
+ self.start_group("instance ");
2247
+ }
2248
+ ComponentExternalKind::Func => {
2249
+ self.start_group("func ");
2250
+ }
2251
+ ComponentExternalKind::Value => {
2252
+ self.start_group("value ");
2253
+ }
2254
+ ComponentExternalKind::Type => {
2255
+ self.start_group("type ");
2256
+ }
2257
+ }
2258
+ Ok(())
2259
+ }
2260
+
2261
+ fn print_component_external_kind(
2262
+ &mut self,
2263
+ state: &State,
2264
+ kind: ComponentExternalKind,
2265
+ index: u32,
2266
+ ) -> Result<()> {
2267
+ self.start_component_external_kind_group(kind)?;
2268
+ match kind {
2269
+ ComponentExternalKind::Module => {
2270
+ self.print_idx(&state.core.module_names, index)?;
2271
+ }
2272
+ ComponentExternalKind::Component => {
2273
+ self.print_idx(&state.component.component_names, index)?;
2274
+ }
2275
+ ComponentExternalKind::Instance => {
2276
+ self.print_idx(&state.component.instance_names, index)?;
2277
+ }
2278
+ ComponentExternalKind::Func => {
2279
+ self.print_idx(&state.component.func_names, index)?;
2280
+ }
2281
+ ComponentExternalKind::Value => {
2282
+ self.print_idx(&state.component.value_names, index)?;
2283
+ }
2284
+ ComponentExternalKind::Type => {
2285
+ self.print_idx(&state.component.type_names, index)?;
2286
+ }
2287
+ }
2288
+ self.end_group();
2289
+ Ok(())
2290
+ }
2291
+
2292
+ fn print_canonical_options(
2293
+ &mut self,
2294
+ state: &State,
2295
+ options: &[CanonicalOption],
2296
+ ) -> Result<()> {
2297
+ for option in options {
2298
+ self.result.push(' ');
2299
+ match option {
2300
+ CanonicalOption::UTF8 => self.result.push_str("string-encoding=utf8"),
2301
+ CanonicalOption::UTF16 => self.result.push_str("string-encoding=utf16"),
2302
+ CanonicalOption::CompactUTF16 => {
2303
+ self.result.push_str("string-encoding=latin1+utf16")
2304
+ }
2305
+ CanonicalOption::Memory(idx) => {
2306
+ self.start_group("memory ");
2307
+ self.print_idx(&state.core.memory_names, *idx)?;
2308
+ self.end_group();
2309
+ }
2310
+ CanonicalOption::Realloc(idx) => {
2311
+ self.start_group("realloc ");
2312
+ self.print_idx(&state.core.func_names, *idx)?;
2313
+ self.end_group();
2314
+ }
2315
+ CanonicalOption::PostReturn(idx) => {
2316
+ self.start_group("post-return ");
2317
+ self.print_idx(&state.core.func_names, *idx)?;
2318
+ self.end_group();
2319
+ }
2320
+ }
2321
+ }
2322
+ Ok(())
2323
+ }
2324
+
2325
+ fn print_canonical_functions(
2326
+ &mut self,
2327
+ state: &mut State,
2328
+ parser: ComponentCanonicalSectionReader,
2329
+ ) -> Result<()> {
2330
+ for func in parser.into_iter_with_offsets() {
2331
+ let (offset, func) = func?;
2332
+ self.newline(offset);
2333
+ match func {
2334
+ CanonicalFunction::Lift {
2335
+ core_func_index,
2336
+ type_index,
2337
+ options,
2338
+ } => {
2339
+ self.start_group("func ");
2340
+ self.print_name(&state.component.func_names, state.component.funcs)?;
2341
+ self.result.push(' ');
2342
+ self.start_group("type ");
2343
+ self.print_idx(&state.component.type_names, type_index)?;
2344
+ self.end_group();
2345
+ self.result.push(' ');
2346
+ self.start_group("canon lift ");
2347
+ self.start_group("core func ");
2348
+ self.print_idx(&state.core.func_names, core_func_index)?;
2349
+ self.end_group();
2350
+ self.print_canonical_options(state, &options)?;
2351
+ self.end_group();
2352
+ self.end_group();
2353
+ state.component.funcs += 1;
2354
+ }
2355
+ CanonicalFunction::Lower {
2356
+ func_index,
2357
+ options,
2358
+ } => {
2359
+ self.start_group("core func ");
2360
+ self.print_name(&state.core.func_names, state.core.funcs)?;
2361
+ self.result.push(' ');
2362
+ self.start_group("canon lower ");
2363
+ self.start_group("func ");
2364
+ self.print_idx(&state.component.func_names, func_index)?;
2365
+ self.end_group();
2366
+ self.print_canonical_options(state, &options)?;
2367
+ self.end_group();
2368
+ self.end_group();
2369
+ state.core.funcs += 1;
2370
+ }
2371
+ CanonicalFunction::ResourceNew { resource } => {
2372
+ self.start_group("core func ");
2373
+ self.print_name(&state.core.func_names, state.core.funcs)?;
2374
+ self.result.push(' ');
2375
+ self.start_group("canon resource.new ");
2376
+ self.print_idx(&state.component.type_names, resource)?;
2377
+ self.end_group();
2378
+ self.end_group();
2379
+ state.core.funcs += 1;
2380
+ }
2381
+ CanonicalFunction::ResourceDrop { resource } => {
2382
+ self.start_group("core func ");
2383
+ self.print_name(&state.core.func_names, state.core.funcs)?;
2384
+ self.result.push(' ');
2385
+ self.start_group("canon resource.drop ");
2386
+ self.print_idx(&state.component.type_names, resource)?;
2387
+ self.end_group();
2388
+ self.end_group();
2389
+ state.core.funcs += 1;
2390
+ }
2391
+ CanonicalFunction::ResourceRep { resource } => {
2392
+ self.start_group("core func ");
2393
+ self.print_name(&state.core.func_names, state.core.funcs)?;
2394
+ self.result.push(' ');
2395
+ self.start_group("canon resource.rep ");
2396
+ self.print_idx(&state.component.type_names, resource)?;
2397
+ self.end_group();
2398
+ self.end_group();
2399
+ state.core.funcs += 1;
2400
+ }
2401
+ }
2402
+ }
2403
+
2404
+ Ok(())
2405
+ }
2406
+
2407
+ fn print_instances(&mut self, state: &mut State, parser: InstanceSectionReader) -> Result<()> {
2408
+ for instance in parser.into_iter_with_offsets() {
2409
+ let (offset, instance) = instance?;
2410
+ self.newline(offset);
2411
+ self.start_group("core instance ");
2412
+ self.print_name(&state.core.instance_names, state.core.instances)?;
2413
+ match instance {
2414
+ Instance::Instantiate { module_index, args } => {
2415
+ self.result.push(' ');
2416
+ self.start_group("instantiate ");
2417
+ self.print_idx(&state.core.module_names, module_index)?;
2418
+ for arg in args.iter() {
2419
+ self.newline(offset);
2420
+ self.print_instantiation_arg(state, arg)?;
2421
+ }
2422
+ self.end_group();
2423
+ state.core.instances += 1;
2424
+ }
2425
+ Instance::FromExports(exports) => {
2426
+ for export in exports.iter() {
2427
+ self.newline(offset);
2428
+ self.print_export(state, export)?;
2429
+ }
2430
+ state.core.instances += 1;
2431
+ }
2432
+ }
2433
+ self.end_group();
2434
+ }
2435
+ Ok(())
2436
+ }
2437
+
2438
+ fn print_component_instances(
2439
+ &mut self,
2440
+ state: &mut State,
2441
+ parser: ComponentInstanceSectionReader,
2442
+ ) -> Result<()> {
2443
+ for instance in parser.into_iter_with_offsets() {
2444
+ let (offset, instance) = instance?;
2445
+ self.newline(offset);
2446
+ self.start_group("instance ");
2447
+ self.print_name(&state.component.instance_names, state.component.instances)?;
2448
+ state.component.instances += 1;
2449
+ match instance {
2450
+ ComponentInstance::Instantiate {
2451
+ component_index,
2452
+ args,
2453
+ } => {
2454
+ self.result.push(' ');
2455
+ self.start_group("instantiate ");
2456
+ self.print_idx(&state.component.component_names, component_index)?;
2457
+ for arg in args.iter() {
2458
+ self.newline(offset);
2459
+ self.print_component_instantiation_arg(state, arg)?;
2460
+ }
2461
+ self.end_group();
2462
+ }
2463
+ ComponentInstance::FromExports(exports) => {
2464
+ for export in exports.iter() {
2465
+ self.newline(offset);
2466
+ self.print_component_export(state, export, false)?;
2467
+ }
2468
+ }
2469
+ }
2470
+ self.end_group();
2471
+ }
2472
+ Ok(())
2473
+ }
2474
+
2475
+ fn print_instantiation_arg(&mut self, state: &State, arg: &InstantiationArg) -> Result<()> {
2476
+ self.start_group("with ");
2477
+ self.print_str(arg.name)?;
2478
+ self.result.push(' ');
2479
+ match arg.kind {
2480
+ InstantiationArgKind::Instance => {
2481
+ self.start_group("instance ");
2482
+ self.print_idx(&state.core.instance_names, arg.index)?;
2483
+ self.end_group();
2484
+ }
2485
+ }
2486
+ self.end_group();
2487
+ Ok(())
2488
+ }
2489
+
2490
+ fn print_component_instantiation_arg(
2491
+ &mut self,
2492
+ state: &State,
2493
+ arg: &ComponentInstantiationArg,
2494
+ ) -> Result<()> {
2495
+ self.start_group("with ");
2496
+ self.print_str(arg.name)?;
2497
+ self.result.push(' ');
2498
+ self.print_component_external_kind(state, arg.kind, arg.index)?;
2499
+ self.end_group();
2500
+ Ok(())
2501
+ }
2502
+
2503
+ fn print_component_start(
2504
+ &mut self,
2505
+ state: &mut State,
2506
+ pos: usize,
2507
+ start: ComponentStartFunction,
2508
+ ) -> Result<()> {
2509
+ self.newline(pos);
2510
+ self.start_group("start ");
2511
+ self.print_idx(&state.component.func_names, start.func_index)?;
2512
+
2513
+ for arg in start.arguments.iter() {
2514
+ self.result.push(' ');
2515
+ self.start_group("value ");
2516
+ self.print_idx(&state.component.value_names, *arg)?;
2517
+ self.end_group();
2518
+ }
2519
+
2520
+ for _ in 0..start.results {
2521
+ self.result.push(' ');
2522
+ self.start_group("result ");
2523
+ self.start_group("value ");
2524
+ self.print_name(&state.component.value_names, state.component.values)?;
2525
+ self.end_group();
2526
+ self.end_group();
2527
+ state.component.values += 1;
2528
+ }
2529
+
2530
+ self.end_group(); // start
2531
+
2532
+ Ok(())
2533
+ }
2534
+
2535
+ fn print_component_aliases(
2536
+ &mut self,
2537
+ states: &mut [State],
2538
+ parser: ComponentAliasSectionReader,
2539
+ ) -> Result<()> {
2540
+ for alias in parser.into_iter_with_offsets() {
2541
+ let (offset, alias) = alias?;
2542
+ self.newline(offset);
2543
+ self.print_component_alias(states, alias)?;
2544
+ }
2545
+ Ok(())
2546
+ }
2547
+
2548
+ fn print_component_alias(
2549
+ &mut self,
2550
+ states: &mut [State],
2551
+ alias: ComponentAlias<'_>,
2552
+ ) -> Result<()> {
2553
+ match alias {
2554
+ ComponentAlias::InstanceExport {
2555
+ kind,
2556
+ instance_index,
2557
+ name,
2558
+ } => {
2559
+ let state = states.last_mut().unwrap();
2560
+ self.start_group("alias export ");
2561
+ self.print_idx(&state.component.instance_names, instance_index)?;
2562
+ self.result.push(' ');
2563
+ self.print_str(name)?;
2564
+ self.result.push(' ');
2565
+ self.start_component_external_kind_group(kind)?;
2566
+ self.print_component_kind_name(state, kind)?;
2567
+ self.end_group();
2568
+
2569
+ self.end_group(); // alias export
2570
+ }
2571
+ ComponentAlias::CoreInstanceExport {
2572
+ instance_index,
2573
+ kind,
2574
+ name,
2575
+ } => {
2576
+ let state = states.last_mut().unwrap();
2577
+ self.start_group("alias core export ");
2578
+ self.print_idx(&state.core.instance_names, instance_index)?;
2579
+ self.result.push(' ');
2580
+ self.print_str(name)?;
2581
+ self.result.push(' ');
2582
+ match kind {
2583
+ ExternalKind::Func => {
2584
+ self.start_group("core func ");
2585
+ self.print_name(&state.core.func_names, state.core.funcs)?;
2586
+ self.end_group();
2587
+ state.core.funcs += 1;
2588
+ }
2589
+ ExternalKind::Table => {
2590
+ self.start_group("core table ");
2591
+ self.print_name(&state.core.table_names, state.core.tables)?;
2592
+ self.end_group();
2593
+ state.core.tables += 1;
2594
+ }
2595
+ ExternalKind::Memory => {
2596
+ self.start_group("core memory ");
2597
+ self.print_name(&state.core.memory_names, state.core.memories)?;
2598
+ self.end_group();
2599
+ state.core.memories += 1;
2600
+ }
2601
+ ExternalKind::Global => {
2602
+ self.start_group("core global ");
2603
+ self.print_name(&state.core.global_names, state.core.globals)?;
2604
+ self.end_group();
2605
+ state.core.globals += 1;
2606
+ }
2607
+ ExternalKind::Tag => {
2608
+ self.start_group("core tag ");
2609
+ self.print_name(&state.core.tag_names, state.core.tags)?;
2610
+ self.end_group();
2611
+ state.core.tags += 1;
2612
+ }
2613
+ }
2614
+ self.end_group(); // alias export
2615
+ }
2616
+
2617
+ ComponentAlias::Outer { kind, count, index } => {
2618
+ let state = states.last().unwrap();
2619
+ let outer = Self::outer_state(states, count)?;
2620
+ self.start_group("alias outer ");
2621
+ if let Some(name) = outer.name.as_ref() {
2622
+ name.write(&mut self.result);
2623
+ } else {
2624
+ self.result.push_str(count.to_string().as_str());
2625
+ }
2626
+ self.result.push(' ');
2627
+ match kind {
2628
+ ComponentOuterAliasKind::CoreModule => {
2629
+ self.print_idx(&outer.core.module_names, index)?;
2630
+ self.result.push(' ');
2631
+ self.start_group("core module ");
2632
+ self.print_name(&state.core.module_names, state.core.modules)?;
2633
+ }
2634
+ ComponentOuterAliasKind::CoreType => {
2635
+ self.print_idx(&outer.core.type_names, index)?;
2636
+ self.result.push(' ');
2637
+ self.start_group("core type ");
2638
+ self.print_name(&state.core.type_names, state.core.types.len() as u32)?;
2639
+ }
2640
+ ComponentOuterAliasKind::Type => {
2641
+ self.print_idx(&outer.component.type_names, index)?;
2642
+ self.result.push(' ');
2643
+ self.start_group("type ");
2644
+ self.print_name(&state.component.type_names, state.component.types)?;
2645
+ }
2646
+ ComponentOuterAliasKind::Component => {
2647
+ self.print_idx(&outer.component.component_names, index)?;
2648
+ self.result.push(' ');
2649
+ self.start_group("component ");
2650
+ self.print_name(
2651
+ &state.component.component_names,
2652
+ state.component.components,
2653
+ )?;
2654
+ }
2655
+ }
2656
+ self.end_group(); // kind
2657
+ self.end_group(); // alias
2658
+
2659
+ let state = states.last_mut().unwrap();
2660
+ match kind {
2661
+ ComponentOuterAliasKind::CoreModule => state.core.modules += 1,
2662
+ ComponentOuterAliasKind::CoreType => state.core.types.push(None),
2663
+ ComponentOuterAliasKind::Type => state.component.types += 1,
2664
+ ComponentOuterAliasKind::Component => state.component.components += 1,
2665
+ }
2666
+ }
2667
+ }
2668
+ Ok(())
2669
+ }
2670
+
2671
+ fn print_str(&mut self, name: &str) -> Result<()> {
2672
+ let mut bytes = [0; 4];
2673
+ self.result.push('"');
2674
+ for c in name.chars() {
2675
+ let v = c as u32;
2676
+ if (0x20..0x7f).contains(&v) && c != '"' && c != '\\' && v < 0xff {
2677
+ self.result.push(c);
2678
+ } else {
2679
+ for byte in c.encode_utf8(&mut bytes).as_bytes() {
2680
+ self.hex_byte(*byte);
2681
+ }
2682
+ }
2683
+ }
2684
+ self.result.push('"');
2685
+ Ok(())
2686
+ }
2687
+
2688
+ fn print_bytes(&mut self, bytes: &[u8]) -> Result<()> {
2689
+ self.result.push('"');
2690
+ for byte in bytes {
2691
+ if *byte >= 0x20 && *byte < 0x7f && *byte != b'"' && *byte != b'\\' {
2692
+ self.result.push(*byte as char);
2693
+ } else {
2694
+ self.hex_byte(*byte);
2695
+ }
2696
+ }
2697
+ self.result.push('"');
2698
+ Ok(())
2699
+ }
2700
+
2701
+ fn hex_byte(&mut self, byte: u8) {
2702
+ fn to_hex(b: u8) -> char {
2703
+ if b < 10 {
2704
+ (b'0' + b) as char
2705
+ } else {
2706
+ (b'a' + b - 10) as char
2707
+ }
2708
+ }
2709
+ self.result.push('\\');
2710
+ self.result.push(to_hex((byte >> 4) & 0xf));
2711
+ self.result.push(to_hex(byte & 0xf));
2712
+ }
2713
+
2714
+ fn print_custom_section(
2715
+ &mut self,
2716
+ state: &State,
2717
+ section: CustomSectionReader<'_>,
2718
+ ) -> Result<()> {
2719
+ match section.name() {
2720
+ // For now `wasmprinter` has invented syntax for `producers` and
2721
+ // `dylink.0` below to use in tests. Note that this syntax is not
2722
+ // official at this time.
2723
+ "producers" => {
2724
+ self.newline(section.range().start);
2725
+ self.print_producers_section(ProducersSectionReader::new(
2726
+ section.data(),
2727
+ section.data_offset(),
2728
+ )?)
2729
+ }
2730
+ "dylink.0" => {
2731
+ self.newline(section.range().start);
2732
+ self.print_dylink0_section(Dylink0SectionReader::new(
2733
+ section.data(),
2734
+ section.data_offset(),
2735
+ ))
2736
+ }
2737
+
2738
+ // These are parsed during `read_names_and_code` and are part of
2739
+ // printing elsewhere, so don't print them.
2740
+ "name" | "component-name" | "metadata.code.branch_hint" => Ok(()),
2741
+
2742
+ // Unknown custom sections get a `@custom` annotation printed.
2743
+ _ => self.print_raw_custom_section(state, section),
2744
+ }
2745
+ }
2746
+
2747
+ fn print_raw_custom_section(
2748
+ &mut self,
2749
+ state: &State,
2750
+ section: CustomSectionReader<'_>,
2751
+ ) -> Result<()> {
2752
+ self.newline(section.range().start);
2753
+ self.start_group("@custom ");
2754
+ self.print_str(section.name())?;
2755
+ if let Some(place) = state.custom_section_place {
2756
+ self.result.push_str(" (");
2757
+ self.result.push_str(place);
2758
+ self.result.push_str(")");
2759
+ }
2760
+ self.result.push_str(" ");
2761
+ self.print_bytes(section.data())?;
2762
+ self.end_group();
2763
+ Ok(())
2764
+ }
2765
+
2766
+ fn print_producers_section(&mut self, section: ProducersSectionReader<'_>) -> Result<()> {
2767
+ self.start_group("@producers");
2768
+ for field in section {
2769
+ let field = field?;
2770
+ for value in field.values.into_iter_with_offsets() {
2771
+ let (offset, value) = value?;
2772
+ self.newline(offset);
2773
+ self.start_group(field.name);
2774
+ self.result.push_str(" ");
2775
+ self.print_str(value.name)?;
2776
+ self.result.push_str(" ");
2777
+ self.print_str(value.version)?;
2778
+ self.end_group();
2779
+ }
2780
+ }
2781
+ self.end_group();
2782
+ Ok(())
2783
+ }
2784
+
2785
+ fn print_dylink0_section(&mut self, mut section: Dylink0SectionReader<'_>) -> Result<()> {
2786
+ self.start_group("@dylink.0");
2787
+ loop {
2788
+ let start = section.original_position();
2789
+ let next = match section.next() {
2790
+ Some(Ok(next)) => next,
2791
+ Some(Err(e)) => return Err(e.into()),
2792
+ None => break,
2793
+ };
2794
+ match next {
2795
+ Dylink0Subsection::MemInfo(info) => {
2796
+ self.newline(start);
2797
+ self.start_group("mem-info");
2798
+ if info.memory_size > 0 || info.memory_alignment > 0 {
2799
+ write!(
2800
+ self.result,
2801
+ " (memory {} {})",
2802
+ info.memory_size, info.memory_alignment
2803
+ )?;
2804
+ }
2805
+ if info.table_size > 0 || info.table_alignment > 0 {
2806
+ write!(
2807
+ self.result,
2808
+ " (table {} {})",
2809
+ info.table_size, info.table_alignment
2810
+ )?;
2811
+ }
2812
+ self.end_group();
2813
+ }
2814
+ Dylink0Subsection::Needed(needed) => {
2815
+ self.newline(start);
2816
+ self.start_group("needed");
2817
+ for s in needed {
2818
+ self.result.push_str(" ");
2819
+ self.print_str(s)?;
2820
+ }
2821
+ self.end_group();
2822
+ }
2823
+ Dylink0Subsection::ExportInfo(info) => {
2824
+ for info in info {
2825
+ self.newline(start);
2826
+ self.start_group("export-info ");
2827
+ self.print_str(info.name)?;
2828
+ self.print_dylink0_flags(info.flags)?;
2829
+ self.end_group();
2830
+ }
2831
+ }
2832
+ Dylink0Subsection::ImportInfo(info) => {
2833
+ for info in info {
2834
+ self.newline(start);
2835
+ self.start_group("import-info ");
2836
+ self.print_str(info.module)?;
2837
+ self.result.push_str(" ");
2838
+ self.print_str(info.field)?;
2839
+ self.print_dylink0_flags(info.flags)?;
2840
+ self.end_group();
2841
+ }
2842
+ }
2843
+ Dylink0Subsection::Unknown { ty, .. } => {
2844
+ bail!("don't know how to print dylink.0 subsection id {ty}");
2845
+ }
2846
+ }
2847
+ }
2848
+ self.end_group();
2849
+ Ok(())
2850
+ }
2851
+
2852
+ fn print_dylink0_flags(&mut self, mut flags: SymbolFlags) -> Result<()> {
2853
+ macro_rules! print_flag {
2854
+ ($($name:ident = $text:tt)*) => ({$(
2855
+ if flags.contains(SymbolFlags::$name) {
2856
+ flags.remove(SymbolFlags::$name);
2857
+ self.result.push_str(concat!(" ", $text));
2858
+ }
2859
+ )*})
2860
+ }
2861
+ // N.B.: Keep in sync with `parse_sym_flags` in `crates/wast/src/core/custom.rs`.
2862
+ print_flag! {
2863
+ BINDING_WEAK = "binding-weak"
2864
+ BINDING_LOCAL = "binding-local"
2865
+ VISIBILITY_HIDDEN = "visibility-hidden"
2866
+ UNDEFINED = "undefined"
2867
+ EXPORTED = "exported"
2868
+ EXPLICIT_NAME = "explicit-name"
2869
+ NO_STRIP = "no-strip"
2870
+ TLS = "tls"
2871
+ ABSOLUTE = "absolute"
2872
+ }
2873
+ if !flags.is_empty() {
2874
+ write!(self.result, " {:#x}", flags)?;
2875
+ }
2876
+ Ok(())
2877
+ }
2878
+
2879
+ fn register_branch_hint_section(&mut self, section: BranchHintSectionReader<'_>) -> Result<()> {
2880
+ self.code_section_hints.clear();
2881
+ for func in section {
2882
+ let func = func?;
2883
+ if self.code_section_hints.len() >= MAX_WASM_FUNCTIONS as usize {
2884
+ bail!("found too many hints");
2885
+ }
2886
+ if func.hints.count() >= MAX_WASM_FUNCTION_SIZE {
2887
+ bail!("found too many hints");
2888
+ }
2889
+ let hints = func
2890
+ .hints
2891
+ .into_iter_with_offsets()
2892
+ .collect::<wasmparser::Result<Vec<_>>>()?;
2893
+ self.code_section_hints.push((func.func, hints));
2894
+ }
2895
+ self.code_section_hints.reverse();
2896
+ Ok(())
2897
+ }
2898
+ }
2899
+
2900
+ struct NamedLocalPrinter {
2901
+ group_name: &'static str,
2902
+ in_group: bool,
2903
+ end_group_after_local: bool,
2904
+ first: bool,
2905
+ }
2906
+
2907
+ impl NamedLocalPrinter {
2908
+ fn new(group_name: &'static str) -> NamedLocalPrinter {
2909
+ NamedLocalPrinter {
2910
+ group_name,
2911
+ in_group: false,
2912
+ end_group_after_local: false,
2913
+ first: true,
2914
+ }
2915
+ }
2916
+
2917
+ fn start_local(&mut self, func: u32, local: u32, dst: &mut Printer, state: &State) {
2918
+ let name = state.core.local_names.index_to_name.get(&(func, local));
2919
+
2920
+ // Named locals must be in their own group, so if we have a name we need
2921
+ // to terminate the previous group.
2922
+ if name.is_some() && self.in_group {
2923
+ dst.result.push(')');
2924
+ self.in_group = false;
2925
+ }
2926
+
2927
+ if self.first {
2928
+ self.first = false;
2929
+ } else {
2930
+ dst.result.push(' ');
2931
+ }
2932
+
2933
+ // Next we either need a separator if we're already in a group or we
2934
+ // need to open a group for our new local.
2935
+ if !self.in_group {
2936
+ dst.result.push('(');
2937
+ dst.result.push_str(self.group_name);
2938
+ dst.result.push(' ');
2939
+ self.in_group = true;
2940
+ }
2941
+
2942
+ // Print the optional name if given...
2943
+ match name {
2944
+ Some(name) => {
2945
+ name.write(&mut dst.result);
2946
+ dst.result.push(' ');
2947
+ self.end_group_after_local = true;
2948
+ }
2949
+ None if dst.name_unnamed => {
2950
+ dst.result.push_str(&format!("$#local{local} "));
2951
+ self.end_group_after_local = true;
2952
+ }
2953
+ None => {
2954
+ self.end_group_after_local = false;
2955
+ }
2956
+ }
2957
+ }
2958
+
2959
+ fn end_local(&mut self, dst: &mut String) {
2960
+ if self.end_group_after_local {
2961
+ dst.push(')');
2962
+ self.end_group_after_local = false;
2963
+ self.in_group = false;
2964
+ }
2965
+ }
2966
+ fn finish(self, dst: &mut String) {
2967
+ if self.in_group {
2968
+ dst.push(')');
2969
+ }
2970
+ }
2971
+ }
2972
+
2973
+ macro_rules! print_float {
2974
+ ($name:ident $float:ident $uint:ident $sint:ident $exp_bits:tt) => {
2975
+ fn $name(&mut self, mut bits: $uint) -> Result<()> {
2976
+ // Calculate a few constants
2977
+ let int_width = mem::size_of::<$uint>() * 8;
2978
+ let exp_width = $exp_bits;
2979
+ let mantissa_width = int_width - 1 - exp_width;
2980
+ let bias = (1 << (exp_width - 1)) - 1;
2981
+ let max_exp = (1 as $sint) << (exp_width - 1);
2982
+ let min_exp = -max_exp + 1;
2983
+
2984
+ // Handle `NaN` and infinity specially
2985
+ let f = $float::from_bits(bits);
2986
+ if bits >> (int_width - 1) != 0 {
2987
+ bits ^= 1 << (int_width - 1);
2988
+ self.result.push('-');
2989
+ }
2990
+ if f.is_infinite() {
2991
+ write!(self.result, "inf (;={};)", f)?;
2992
+ return Ok(());
2993
+ }
2994
+ if f.is_nan() {
2995
+ let payload = bits & ((1 << mantissa_width) - 1);
2996
+ if payload == 1 << (mantissa_width - 1) {
2997
+ write!(self.result, "nan (;={};)", f)?;
2998
+ } else {
2999
+ write!(self.result, "nan:{:#x} (;={};)", payload, f)?;
3000
+ }
3001
+ return Ok(());
3002
+ }
3003
+
3004
+ // Figure out our exponent, but keep in mine that it's in an
3005
+ // integer width that may not be supported. As a result we do a few
3006
+ // tricks here:
3007
+ //
3008
+ // * Make the MSB the top bit of the exponent, then shift the
3009
+ // exponent to the bottom. This means we now have a signed
3010
+ // integer in `$sint` width representing the whole exponent.
3011
+ // * Do the arithmetic for the exponent (subtract)
3012
+ // * Next we only care about the lowest `$exp_bits` bits of the
3013
+ // result, but we do care about the sign. Use sign-carrying of
3014
+ // the signed integer shifts to shift it left then shift it back.
3015
+ //
3016
+ // Overall this should do basic arithmetic for `$exp_bits` bit
3017
+ // numbers and get the result back as a signed integer with `$sint`
3018
+ // bits in `exponent` representing the same decimal value.
3019
+ let mut exponent = (((bits << 1) as $sint) >> (mantissa_width + 1)).wrapping_sub(bias);
3020
+ exponent = (exponent << (int_width - exp_width)) >> (int_width - exp_width);
3021
+ let mut fraction = bits & ((1 << mantissa_width) - 1);
3022
+ self.result.push_str("0x");
3023
+ if bits == 0 {
3024
+ self.result.push_str("0p+0");
3025
+ } else {
3026
+ self.result.push('1');
3027
+ if fraction > 0 {
3028
+ fraction <<= (int_width - mantissa_width);
3029
+
3030
+ // Apparently the subnormal is handled here. I don't know
3031
+ // what a subnormal is. If someone else does, please let me
3032
+ // know!
3033
+ if exponent == min_exp {
3034
+ let leading = fraction.leading_zeros();
3035
+ if (leading as usize) < int_width - 1 {
3036
+ fraction <<= leading + 1;
3037
+ } else {
3038
+ fraction = 0;
3039
+ }
3040
+ exponent -= leading as $sint;
3041
+ }
3042
+
3043
+ self.result.push('.');
3044
+ while fraction > 0 {
3045
+ write!(self.result, "{:x}", fraction >> (int_width - 4))?;
3046
+ fraction <<= 4;
3047
+ }
3048
+ }
3049
+ write!(self.result, "p{:+}", exponent)?;
3050
+ }
3051
+ write!(self.result, " (;={};)", f)?;
3052
+ Ok(())
3053
+ }
3054
+ };
3055
+ }
3056
+
3057
+ impl Printer {
3058
+ print_float!(print_f32 f32 u32 i32 8);
3059
+ print_float!(print_f64 f64 u64 i64 11);
3060
+ }
3061
+
3062
+ impl Naming {
3063
+ fn new<'a>(
3064
+ name: &'a str,
3065
+ index: u32,
3066
+ group: &str,
3067
+ used: Option<&mut HashSet<&'a str>>,
3068
+ ) -> Naming {
3069
+ let mut identifier = None;
3070
+
3071
+ // If the `name` provided can't be used as the raw identifier for the
3072
+ // item that it's describing then a synthetic name must be made. The
3073
+ // rules here which generate a name are:
3074
+ //
3075
+ // * Empty identifiers are not allowed
3076
+ // * Identifiers have a fixed set of valid characters
3077
+ // * For wasmprinter's purposes we "reserve" identifiers with the `#`
3078
+ // prefix, which is in theory rare to encounter in practice.
3079
+ // * If the name has already been used for some other item and cannot
3080
+ // be reused (e.g. because shadowing in this context is not possible).
3081
+ //
3082
+ // If any of these conditions match then we generate a unique identifier
3083
+ // based on `name` but not it exactly. By factoring in the `group`,
3084
+ // `index`, and `name` we get a guaranteed unique identifier (due to the
3085
+ // leading `#` prefix that we reserve and factoring in of the item
3086
+ // index) while preserving human readability at least somewhat (the
3087
+ // valid identifier characters of `name` still appear in the returned
3088
+ // name).
3089
+ if name.is_empty()
3090
+ || name.chars().any(|c| !is_idchar(c))
3091
+ || name.starts_with('#')
3092
+ || used.map(|set| !set.insert(name)).unwrap_or(false)
3093
+ {
3094
+ let mut id = String::new();
3095
+ id.push('#');
3096
+ id.push_str(group);
3097
+ write!(id, "{}", index).unwrap();
3098
+ id.push('<');
3099
+ id.extend(name.chars().map(|c| if is_idchar(c) { c } else { '_' }));
3100
+ id.push('>');
3101
+ identifier = Some(id);
3102
+ }
3103
+ return Naming {
3104
+ identifier,
3105
+ name: name.to_string(),
3106
+ };
3107
+
3108
+ // See https://webassembly.github.io/spec/core/text/values.html#text-id
3109
+ fn is_idchar(c: char) -> bool {
3110
+ matches!(
3111
+ c,
3112
+ '0'..='9'
3113
+ | 'a'..='z'
3114
+ | 'A'..='Z'
3115
+ | '!'
3116
+ | '#'
3117
+ | '$'
3118
+ | '%'
3119
+ | '&'
3120
+ | '\''
3121
+ | '*'
3122
+ | '+'
3123
+ | '-'
3124
+ | '.'
3125
+ | '/'
3126
+ | ':'
3127
+ | '<'
3128
+ | '='
3129
+ | '>'
3130
+ | '?'
3131
+ | '@'
3132
+ | '\\'
3133
+ | '^'
3134
+ | '_'
3135
+ | '`'
3136
+ | '|'
3137
+ | '~'
3138
+ )
3139
+ }
3140
+ }
3141
+
3142
+ fn identifier(&self) -> &str {
3143
+ match &self.identifier {
3144
+ Some(s) => s,
3145
+ None => &self.name,
3146
+ }
3147
+ }
3148
+
3149
+ fn write(&self, dst: &mut String) {
3150
+ match &self.identifier {
3151
+ Some(alternate) => {
3152
+ assert!(*alternate != self.name);
3153
+ dst.push('$');
3154
+ dst.push_str(alternate);
3155
+ dst.push_str(" (@name \"");
3156
+ // https://webassembly.github.io/spec/core/text/values.html#text-string
3157
+ for c in self.name.chars() {
3158
+ match c {
3159
+ '\t' => dst.push_str("\\t"),
3160
+ '\n' => dst.push_str("\\n"),
3161
+ '\r' => dst.push_str("\\r"),
3162
+ '"' => dst.push_str("\\\""),
3163
+ '\'' => dst.push_str("\\'"),
3164
+ '\\' => dst.push_str("\\\\"),
3165
+ c if (c as u32) < 0x20 || c as u32 == 0x7f => {
3166
+ dst.push_str("\\u{");
3167
+ write!(dst, "{:x}", c as u32).unwrap();
3168
+ dst.push('}');
3169
+ }
3170
+ other => dst.push(other),
3171
+ }
3172
+ }
3173
+ dst.push_str("\")");
3174
+ }
3175
+ None => {
3176
+ dst.push('$');
3177
+ dst.push_str(&self.name);
3178
+ }
3179
+ }
3180
+ }
3181
+ }
3182
+
3183
+ /// Helper trait for the `NamingMap` type's `K` type parameter.
3184
+ trait NamingNamespace {
3185
+ fn desc() -> &'static str;
3186
+ }
3187
+
3188
+ macro_rules! naming_namespaces {
3189
+ ($(struct $name:ident => $desc:tt)*) => ($(
3190
+ struct $name;
3191
+
3192
+ impl NamingNamespace for $name {
3193
+ fn desc() -> &'static str { $desc }
3194
+ }
3195
+ )*)
3196
+ }
3197
+
3198
+ naming_namespaces! {
3199
+ struct NameFunc => "func"
3200
+ struct NameModule => "module"
3201
+ struct NameInstance => "instance"
3202
+ struct NameGlobal => "global"
3203
+ struct NameMemory => "memory"
3204
+ struct NameLocal => "local"
3205
+ struct NameLabel => "label"
3206
+ struct NameTable => "table"
3207
+ struct NameValue => "value"
3208
+ struct NameType => "type"
3209
+ struct NameField => "field"
3210
+ struct NameData => "data"
3211
+ struct NameElem => "elem"
3212
+ struct NameComponent => "component"
3213
+ struct NameTag => "tag"
3214
+ }
3215
+
3216
+ fn name_map<K>(into: &mut NamingMap<u32, K>, names: NameMap<'_>, name: &str) -> Result<()> {
3217
+ let mut used = HashSet::new();
3218
+ for naming in names {
3219
+ let naming = naming?;
3220
+ into.index_to_name.insert(
3221
+ naming.index,
3222
+ Naming::new(naming.name, naming.index, name, Some(&mut used)),
3223
+ );
3224
+ }
3225
+ Ok(())
3226
+ }