code_ownership 2.1.0 → 2.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (410) hide show
  1. checksums.yaml +4 -4
  2. data/.cargo/config +2 -2
  3. data/Cargo.lock +10 -16
  4. data/README.md +8 -8
  5. data/ext/cargo-vendor/codeowners-0.3.2/.cargo-checksum.json +1 -0
  6. data/ext/cargo-vendor/codeowners-0.3.2/.github/CODEOWNERS +1 -0
  7. data/ext/cargo-vendor/codeowners-0.3.2/AGENTS.md +38 -0
  8. data/ext/cargo-vendor/codeowners-0.3.2/CLAUDE.md +1 -0
  9. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/Cargo.lock +1 -1
  10. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/Cargo.toml +17 -1
  11. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/README.md +11 -1
  12. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/cli.rs +9 -5
  13. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/config.rs +81 -1
  14. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/crosscheck.rs +5 -8
  15. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/ownership/codeowners_file_parser.rs +3 -3
  16. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/ownership/file_owner_resolver.rs +3 -1
  17. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/ownership/mapper/package_mapper.rs +2 -2
  18. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/ownership/mapper.rs +2 -2
  19. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/ownership/validator.rs +15 -10
  20. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/ownership.rs +1 -0
  21. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/project.rs +3 -0
  22. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/project_builder.rs +111 -44
  23. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/runner/api.rs +7 -6
  24. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/runner/types.rs +2 -1
  25. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/runner.rs +67 -16
  26. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/tracked_files.rs +29 -1
  27. data/ext/cargo-vendor/codeowners-0.3.2/tests/codeowners_path_test.rs +92 -0
  28. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/common/mod.rs +2 -1
  29. data/ext/cargo-vendor/codeowners-0.3.2/tests/executable_name_config_test.rs +67 -0
  30. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/custom_codeowners_path/config/code_ownership.yml +11 -0
  31. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/custom_codeowners_path/config/teams/test_team.yml +6 -0
  32. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/custom_codeowners_path/docs/CODEOWNERS +14 -0
  33. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/custom_codeowners_path/expected/CODEOWNERS +14 -0
  34. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/custom_codeowners_path/ruby/app/models/test.rb +3 -0
  35. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/custom_executable_name/.github/CODEOWNERS +10 -0
  36. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/custom_executable_name/app/foo.rb +3 -0
  37. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/custom_executable_name/config/code_ownership.yml +4 -0
  38. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/custom_executable_name/config/teams/foo.yml +5 -0
  39. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/custom_executable_name/config/teams/payments.yml +6 -0
  40. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/custom_executable_name/ruby/app/payments/foo.rb +4 -0
  41. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/default_executable_name/.github/CODEOWNERS +11 -0
  42. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/default_executable_name/app/bar.rb +3 -0
  43. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/default_executable_name/config/code_ownership.yml +5 -0
  44. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/default_executable_name/config/teams/bar.yml +5 -0
  45. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/missing_github_team/.github/CODEOWNERS +10 -0
  46. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/missing_github_team/config/code_ownership.yml +10 -0
  47. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/missing_github_team/config/teams/bad_team.yml +1 -0
  48. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/missing_github_team/config/teams/good.yml +3 -0
  49. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/valid_project/gems/pets/dog.rb +5 -0
  50. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/git_stage_test.rs +4 -1
  51. data/ext/cargo-vendor/codeowners-0.3.2/tests/missing_github_team_test.rs +23 -0
  52. data/ext/cargo-vendor/codeowners-0.3.2/tests/run_config_executable_override_test.rs +98 -0
  53. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/runner_api.rs +8 -4
  54. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/valid_project_test.rs +3 -3
  55. data/ext/cargo-vendor/codeowners-0.3.2/tests/validate_files_test.rs +378 -0
  56. data/ext/cargo-vendor/magnus-0.8.2/.cargo-checksum.json +1 -0
  57. data/ext/cargo-vendor/magnus-0.8.2/.cargo_vcs_info.json +6 -0
  58. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/CHANGELOG.md +66 -1
  59. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/Cargo.lock +243 -9
  60. data/ext/cargo-vendor/magnus-0.8.2/Cargo.toml +277 -0
  61. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/Cargo.toml.orig +11 -6
  62. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/README.md +75 -23
  63. data/ext/cargo-vendor/magnus-0.8.2/build.rs +15 -0
  64. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/complete_object/test/temperature_test.rb +4 -4
  65. data/ext/cargo-vendor/magnus-0.8.2/examples/inheritance.rs +66 -0
  66. data/ext/cargo-vendor/magnus-0.8.2/examples/mut_point.rs +116 -0
  67. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/api.rs +4 -3
  68. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/class.rs +9 -7
  69. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/encoding.rs +5 -5
  70. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/error.rs +12 -3
  71. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/fiber.rs +5 -5
  72. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/gc.rs +3 -3
  73. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/integer.rs +134 -0
  74. data/ext/cargo-vendor/magnus-0.8.2/src/io.rs +230 -0
  75. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/lib.rs +53 -54
  76. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/macros.rs +2 -2
  77. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/method.rs +14 -100
  78. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/module.rs +1 -1
  79. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/mutex.rs +1 -1
  80. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_array.rs +2 -2
  81. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_bignum.rs +100 -3
  82. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_hash.rs +63 -1
  83. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_string.rs +31 -231
  84. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_typed_data.rs +6 -9
  85. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/rb_sys.rs +4 -4
  86. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/scan_args.rs +3 -3
  87. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/thread.rs +16 -10
  88. data/ext/cargo-vendor/magnus-0.8.2/src/time.rs +462 -0
  89. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/try_convert.rs +64 -2
  90. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/typed_data.rs +113 -11
  91. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/value/flonum.rs +1 -1
  92. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/value.rs +83 -6
  93. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/test +1 -1
  94. data/ext/cargo-vendor/magnus-0.8.2/tests/hash.rs +44 -0
  95. data/ext/cargo-vendor/magnus-0.8.2/tests/io.rs +62 -0
  96. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/return_iter.rs +1 -1
  97. data/ext/cargo-vendor/magnus-0.8.2/tests/string.rs +23 -0
  98. data/ext/cargo-vendor/magnus-0.8.2/tests/time.rs +71 -0
  99. data/ext/cargo-vendor/magnus-macros-0.8.0/.cargo-checksum.json +1 -0
  100. data/ext/cargo-vendor/magnus-macros-0.8.0/.cargo_vcs_info.json +6 -0
  101. data/ext/cargo-vendor/magnus-macros-0.8.0/Cargo.lock +47 -0
  102. data/ext/cargo-vendor/{magnus-macros-0.6.0 → magnus-macros-0.8.0}/Cargo.toml +10 -1
  103. data/ext/cargo-vendor/{magnus-macros-0.6.0 → magnus-macros-0.8.0}/Cargo.toml.orig +1 -1
  104. data/ext/cargo-vendor/magnus-macros-0.8.0/src/lib.rs +545 -0
  105. data/ext/cargo-vendor/{magnus-macros-0.6.0 → magnus-macros-0.8.0}/src/typed_data.rs +3 -3
  106. data/ext/cargo-vendor/{magnus-macros-0.6.0 → magnus-macros-0.8.0}/src/util.rs +1 -1
  107. data/ext/cargo-vendor/serde_magnus-0.10.0/.cargo-checksum.json +1 -0
  108. data/ext/cargo-vendor/serde_magnus-0.10.0/.cargo_vcs_info.json +6 -0
  109. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/Cargo.lock +77 -75
  110. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/Cargo.toml +3 -3
  111. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/Cargo.toml.orig +7 -4
  112. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/README.md +8 -5
  113. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/de/array_deserializer.rs +12 -8
  114. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/de/array_enumerator.rs +12 -7
  115. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/de/deserializer.rs +21 -18
  116. data/ext/cargo-vendor/serde_magnus-0.10.0/src/de/enum_deserializer.rs +35 -0
  117. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/de/hash_deserializer.rs +18 -11
  118. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/de/mod.rs +76 -76
  119. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/de/variant_deserializer.rs +10 -9
  120. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/error.rs +10 -4
  121. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/lib.rs +6 -5
  122. data/ext/cargo-vendor/serde_magnus-0.10.0/src/ser/enums.rs +11 -0
  123. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/ser/map_serializer.rs +11 -12
  124. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/ser/mod.rs +53 -50
  125. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/ser/seq_serializer.rs +11 -10
  126. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/ser/serializer.rs +50 -34
  127. data/ext/cargo-vendor/serde_magnus-0.10.0/src/ser/struct_serializer.rs +40 -0
  128. data/ext/cargo-vendor/serde_magnus-0.10.0/src/ser/struct_variant_serializer.rs +45 -0
  129. data/ext/cargo-vendor/serde_magnus-0.10.0/src/ser/tuple_variant_serializer.rs +38 -0
  130. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/deserializing_arrays.rs +3 -3
  131. data/ext/cargo-vendor/serde_magnus-0.10.0/tests/deserializing_booleans.rs +15 -0
  132. data/ext/cargo-vendor/serde_magnus-0.10.0/tests/deserializing_enums.rs +39 -0
  133. data/ext/cargo-vendor/serde_magnus-0.10.0/tests/deserializing_floats.rs +12 -0
  134. data/ext/cargo-vendor/serde_magnus-0.10.0/tests/deserializing_integers.rs +18 -0
  135. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/deserializing_maps.rs +3 -2
  136. data/ext/cargo-vendor/serde_magnus-0.10.0/tests/deserializing_options.rs +15 -0
  137. data/ext/cargo-vendor/serde_magnus-0.10.0/tests/deserializing_results.rs +17 -0
  138. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/deserializing_strings.rs +7 -7
  139. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/deserializing_structs.rs +9 -9
  140. data/ext/cargo-vendor/serde_magnus-0.10.0/tests/deserializing_tuples.rs +27 -0
  141. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/deserializing_vecs.rs +3 -3
  142. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/serializing_arrays.rs +3 -3
  143. data/ext/cargo-vendor/serde_magnus-0.10.0/tests/serializing_booleans.rs +15 -0
  144. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/serializing_enums.rs +9 -7
  145. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/serializing_floats.rs +2 -2
  146. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/serializing_integers.rs +4 -4
  147. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/serializing_maps.rs +3 -2
  148. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/serializing_options.rs +3 -3
  149. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/serializing_results.rs +5 -4
  150. data/ext/cargo-vendor/serde_magnus-0.10.0/tests/serializing_strings.rs +30 -0
  151. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/serializing_structs.rs +15 -7
  152. data/ext/cargo-vendor/serde_magnus-0.10.0/tests/serializing_tuples.rs +35 -0
  153. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/serializing_vecs.rs +3 -3
  154. data/ext/cargo-vendor/unicode-ident-1.0.19/.cargo-checksum.json +1 -1
  155. data/ext/code_ownership/Cargo.toml +3 -3
  156. data/ext/code_ownership/extconf.rb +2 -1
  157. data/ext/code_ownership/src/lib.rs +18 -18
  158. data/lib/code_ownership/cli.rb +1 -0
  159. data/lib/code_ownership/private/file_path_finder.rb +22 -10
  160. data/lib/code_ownership/private/file_path_team_cache.rb +5 -9
  161. data/lib/code_ownership/private/for_file_output_builder.rb +0 -1
  162. data/lib/code_ownership/private/team_finder.rb +9 -16
  163. data/lib/code_ownership/version.rb +2 -2
  164. data/lib/code_ownership.rb +14 -17
  165. metadata +359 -337
  166. data/ext/cargo-vendor/codeowners-0.3.0/.cargo-checksum.json +0 -1
  167. data/ext/cargo-vendor/codeowners-0.3.0/tests/validate_files_test.rs +0 -144
  168. data/ext/cargo-vendor/magnus-0.7.1/.cargo-checksum.json +0 -1
  169. data/ext/cargo-vendor/magnus-0.7.1/.cargo_vcs_info.json +0 -6
  170. data/ext/cargo-vendor/magnus-0.7.1/Cargo.toml +0 -95
  171. data/ext/cargo-vendor/magnus-0.7.1/build.rs +0 -5
  172. data/ext/cargo-vendor/magnus-0.7.1/examples/mut_point.rs +0 -60
  173. data/ext/cargo-vendor/magnus-0.7.1/src/time.rs +0 -190
  174. data/ext/cargo-vendor/magnus-0.7.1/tests/hash.rs +0 -25
  175. data/ext/cargo-vendor/magnus-0.7.1/tests/string.rs +0 -13
  176. data/ext/cargo-vendor/magnus-macros-0.6.0/.cargo-checksum.json +0 -1
  177. data/ext/cargo-vendor/magnus-macros-0.6.0/.cargo_vcs_info.json +0 -6
  178. data/ext/cargo-vendor/magnus-macros-0.6.0/src/lib.rs +0 -401
  179. data/ext/cargo-vendor/rb-sys-env-0.1.2/.cargo-checksum.json +0 -1
  180. data/ext/cargo-vendor/rb-sys-env-0.1.2/.cargo_vcs_info.json +0 -6
  181. data/ext/cargo-vendor/rb-sys-env-0.1.2/Cargo.toml +0 -25
  182. data/ext/cargo-vendor/rb-sys-env-0.1.2/Cargo.toml.orig +0 -14
  183. data/ext/cargo-vendor/rb-sys-env-0.1.2/LICENSE-APACHE +0 -190
  184. data/ext/cargo-vendor/rb-sys-env-0.1.2/LICENSE-MIT +0 -21
  185. data/ext/cargo-vendor/rb-sys-env-0.1.2/readme.md +0 -119
  186. data/ext/cargo-vendor/rb-sys-env-0.1.2/src/defines.rs +0 -37
  187. data/ext/cargo-vendor/rb-sys-env-0.1.2/src/lib.rs +0 -180
  188. data/ext/cargo-vendor/rb-sys-env-0.1.2/src/rb_env.rs +0 -110
  189. data/ext/cargo-vendor/rb-sys-env-0.1.2/src/ruby_version.rs +0 -163
  190. data/ext/cargo-vendor/rb-sys-env-0.1.2/src/utils.rs +0 -6
  191. data/ext/cargo-vendor/serde_magnus-0.9.0/.cargo-checksum.json +0 -1
  192. data/ext/cargo-vendor/serde_magnus-0.9.0/.cargo_vcs_info.json +0 -6
  193. data/ext/cargo-vendor/serde_magnus-0.9.0/src/de/enum_deserializer.rs +0 -30
  194. data/ext/cargo-vendor/serde_magnus-0.9.0/src/ser/enums.rs +0 -11
  195. data/ext/cargo-vendor/serde_magnus-0.9.0/src/ser/struct_serializer.rs +0 -36
  196. data/ext/cargo-vendor/serde_magnus-0.9.0/src/ser/struct_variant_serializer.rs +0 -37
  197. data/ext/cargo-vendor/serde_magnus-0.9.0/src/ser/tuple_variant_serializer.rs +0 -33
  198. data/ext/cargo-vendor/serde_magnus-0.9.0/tests/deserializing_booleans.rs +0 -18
  199. data/ext/cargo-vendor/serde_magnus-0.9.0/tests/deserializing_enums.rs +0 -39
  200. data/ext/cargo-vendor/serde_magnus-0.9.0/tests/deserializing_floats.rs +0 -12
  201. data/ext/cargo-vendor/serde_magnus-0.9.0/tests/deserializing_integers.rs +0 -18
  202. data/ext/cargo-vendor/serde_magnus-0.9.0/tests/deserializing_options.rs +0 -15
  203. data/ext/cargo-vendor/serde_magnus-0.9.0/tests/deserializing_results.rs +0 -17
  204. data/ext/cargo-vendor/serde_magnus-0.9.0/tests/deserializing_tuples.rs +0 -31
  205. data/ext/cargo-vendor/serde_magnus-0.9.0/tests/serializing_booleans.rs +0 -15
  206. data/ext/cargo-vendor/serde_magnus-0.9.0/tests/serializing_strings.rs +0 -30
  207. data/ext/cargo-vendor/serde_magnus-0.9.0/tests/serializing_tuples.rs +0 -27
  208. data/ext/cargo-vendor/unicode-ident-1.0.19/tests/fst/.gitignore +0 -1
  209. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/.github/workflows/audit.yml +0 -0
  210. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/.github/workflows/ci.yml +0 -0
  211. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/.github/workflows/dotslash-config.json +0 -0
  212. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/.rustfmt.toml +0 -0
  213. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/.rusty-hook.toml +0 -0
  214. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/dev/run_benchmarks_for_file.sh +0 -0
  215. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/dev/run_benchmarks_for_gv.sh +0 -0
  216. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/rust-toolchain.toml +0 -0
  217. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/cache/file.rs +0 -0
  218. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/cache/mod.rs +0 -0
  219. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/cache/noop.rs +0 -0
  220. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/common_test.rs +0 -0
  221. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/lib.rs +0 -0
  222. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/main.rs +0 -0
  223. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/ownership/codeowners_query.rs +0 -0
  224. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/ownership/file_generator.rs +0 -0
  225. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/ownership/file_owner_finder.rs +0 -0
  226. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/ownership/mapper/annotated_file_mapper.rs +0 -0
  227. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/ownership/mapper/directory_mapper.rs +0 -0
  228. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/ownership/mapper/escaper.rs +0 -0
  229. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/ownership/mapper/team_gem_mapper.rs +0 -0
  230. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/ownership/mapper/team_glob_mapper.rs +0 -0
  231. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/ownership/mapper/team_yml_mapper.rs +0 -0
  232. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/path_utils.rs +0 -0
  233. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/project_file_builder.rs +0 -0
  234. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/cache_test.rs +0 -0
  235. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/crosscheck_owners_test.rs +0 -0
  236. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/invalid_project/.github/CODEOWNERS +0 -0
  237. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/invalid_project/config/code_ownership.yml +0 -0
  238. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/invalid_project/config/teams/payments.yml +0 -0
  239. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/invalid_project/config/teams/payroll.yml +0 -0
  240. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/invalid_project/gems/payroll_calculator/calculator.rb +0 -0
  241. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/invalid_project/ruby/app/models/bank_account.rb +0 -0
  242. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/invalid_project/ruby/app/models/blockchain.rb +0 -0
  243. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/invalid_project/ruby/app/models/payroll.rb +0 -0
  244. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/invalid_project/ruby/app/payments/nacha.rb +0 -0
  245. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/invalid_project/ruby/app/services/.codeowner +0 -0
  246. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/invalid_project/ruby/app/services/multi_owned.rb +0 -0
  247. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/invalid_project/ruby/app/unowned.rb +0 -0
  248. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/invalid_project/ruby/packages/payroll_flow/package.yml +0 -0
  249. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/javascript_only_project/.github/CODEOWNERS +0 -0
  250. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/javascript_only_project/.keep +0 -0
  251. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/javascript_only_project/config/code_ownership.yml +0 -0
  252. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/javascript_only_project/config/teams/design.yml +0 -0
  253. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/javascript_only_project/config/teams/frontend.yml +0 -0
  254. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/javascript_only_project/frontend/apps/public/index.tsx +0 -0
  255. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/javascript_only_project/frontend/packages/dashboard/package.json +0 -0
  256. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/javascript_only_project/frontend/packages/dashboard/src/index.tsx +0 -0
  257. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/javascript_only_project/frontend/packages/ui-kit/.codeowner +0 -0
  258. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/javascript_only_project/frontend/packages/ui-kit/src/button.tsx +0 -0
  259. /data/ext/cargo-vendor/{codeowners-0.3.0/tests/fixtures/valid_project → codeowners-0.3.2/tests/fixtures/missing_github_team}/gems/pets/dog.rb +0 -0
  260. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/multiple-directory-owners/.github/CODEOWNERS +0 -0
  261. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/multiple-directory-owners/app/consumers/.codeowner +0 -0
  262. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/multiple-directory-owners/app/consumers/deep/nesting/nestdir/deep_file.rb +0 -0
  263. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/multiple-directory-owners/app/consumers/one_owner.rb +0 -0
  264. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/multiple-directory-owners/app/services/.codeowner +0 -0
  265. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/multiple-directory-owners/app/services/exciting/.codeowner +0 -0
  266. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/multiple-directory-owners/app/services/exciting/some_other_file.rb +0 -0
  267. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/multiple-directory-owners/config/code_ownership.yml +0 -0
  268. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/multiple-directory-owners/config/teams/bar.yml +0 -0
  269. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/multiple-directory-owners/config/teams/foo.yml +0 -0
  270. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/.github/CODEOWNERS +0 -0
  271. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/.ignore +0 -0
  272. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/config/code_ownership.yml +0 -0
  273. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/config/teams/payments.yml +0 -0
  274. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/config/teams/payroll.yml +0 -0
  275. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/config/teams/ux.yml +0 -0
  276. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/gems/payroll_calculator/calculator.rb +0 -0
  277. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/javascript/packages/PayrollFlow/index.tsx +0 -0
  278. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/javascript/packages/PayrollFlow/package.json +0 -0
  279. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/javascript/packages/items/(special)/.codeowner +0 -0
  280. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/javascript/packages/items/(special)/pay.ts +0 -0
  281. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/javascript/packages/items/.codeowner +0 -0
  282. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/javascript/packages/items/item.ts +0 -0
  283. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/javascript/packages/list/page-admin.tsx +0 -0
  284. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/ruby/app/models/bank_account.rb +0 -0
  285. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/ruby/app/models/payroll.rb +0 -0
  286. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/ruby/app/payments/foo/.codeowner +0 -0
  287. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/ruby/app/payments/foo/ownedby_payroll.rb +0 -0
  288. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/ruby/app/payments/nacha.rb +0 -0
  289. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/ruby/app/payroll/.codeowner +0 -0
  290. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/ruby/app/payroll/payroll.rb +0 -0
  291. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/ruby/app/views/foos/edit.erb +0 -0
  292. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/ruby/app/views/foos/index.html.erb +0 -0
  293. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/ruby/app/views/foos/new.html.erb +0 -0
  294. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/ruby/ignored_files/git_ignored.rb +0 -0
  295. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/ruby/packages/payroll_flow/package.yml +0 -0
  296. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/should_be_ignored/an_ignored_file.rb +0 -0
  297. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/.github/CODEOWNERS +0 -0
  298. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/config/code_ownership.yml +0 -0
  299. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/config/teams/brewers.yml +0 -0
  300. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/config/teams/cubs.yml +0 -0
  301. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/config/teams/giants.yml +0 -0
  302. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/config/teams/rockies.yml +0 -0
  303. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/frontend/packages/components/datepicker/package.json +0 -0
  304. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/frontend/packages/components/datepicker/src/picks/dp.tsx +0 -0
  305. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/frontend/packages/components/list/package.json +0 -0
  306. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/frontend/packages/components/list/src/item.tsx +0 -0
  307. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/frontend/packages/components/textfield/package.json +0 -0
  308. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/frontend/packages/components/textfield/src/field.tsx +0 -0
  309. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/frontend/packages/components/textfield/src/fields/small.tsx +0 -0
  310. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/gems/apollo/lib/apollo.rb +0 -0
  311. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/gems/ivy/lib/ivy.rb +0 -0
  312. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/gems/lager/lib/lager.rb +0 -0
  313. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/gems/summit/lib/summit.rb +0 -0
  314. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/packs/games/app/services/stats.rb +0 -0
  315. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/packs/games/package.yml +0 -0
  316. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/packs/locations/app/services/capacity.rb +0 -0
  317. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/packs/locations/package.yml +0 -0
  318. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/packs/schedule/app/services/date.rb +0 -0
  319. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/packs/schedule/package.yml +0 -0
  320. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/ruby/app/brewers/lib/util.rb +0 -0
  321. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/ruby/app/brewers/services/play.rb +0 -0
  322. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/ruby/app/cubs/.codeowner +0 -0
  323. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/ruby/app/cubs/services/models/.codeowner +0 -0
  324. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/ruby/app/cubs/services/models/db/price.rb +0 -0
  325. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/ruby/app/cubs/services/models/entertainment.rb +0 -0
  326. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/ruby/app/cubs/services/play.rb +0 -0
  327. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/ruby/app/giants/services/play.rb +0 -0
  328. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/ruby/app/rockies/services/play.rb +0 -0
  329. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/invalid_project_structure_test.rs +0 -0
  330. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/invalid_project_test.rs +0 -0
  331. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/multiple_directory_owners_test.rs +0 -0
  332. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/untracked_files_test.rs +0 -0
  333. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/valid_project_with_overrides_test.rs +0 -0
  334. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tmp/.gitkeep +0 -0
  335. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/.cargo/config.toml +0 -0
  336. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/Gemfile +0 -0
  337. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/LICENSE +0 -0
  338. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/complete_object/Rakefile +0 -0
  339. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/complete_object/lib/temperature.rb +0 -0
  340. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/custom_exception_ruby/Rakefile +0 -0
  341. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/custom_exception_ruby/lib/ahriman/error.rb +0 -0
  342. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/custom_exception_ruby/lib/ahriman.rb +0 -0
  343. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/custom_exception_ruby/test/error_test.rb +0 -0
  344. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/custom_exception_rust/Rakefile +0 -0
  345. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/custom_exception_rust/lib/ahriman.rb +0 -0
  346. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/custom_exception_rust/test/error_test.rb +0 -0
  347. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/fibonacci.rs +0 -0
  348. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/hello_world.rs +0 -0
  349. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/point.rs +0 -0
  350. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/rust_blank/Rakefile +0 -0
  351. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/rust_blank/lib/rust_blank.rb +0 -0
  352. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/rust_blank/test/bench.rb +0 -0
  353. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/rust_blank/test/blank_test.rb +0 -0
  354. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/block.rs +0 -0
  355. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/embed.rs +0 -0
  356. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/enumerator.rs +0 -0
  357. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/exception.rs +0 -0
  358. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/float.rs +0 -0
  359. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/into_value.rs +0 -0
  360. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/numeric.rs +0 -0
  361. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/object.rs +0 -0
  362. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/process.rs +0 -0
  363. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_complex.rs +0 -0
  364. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_file.rs +0 -0
  365. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_float.rs +0 -0
  366. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_match.rs +0 -0
  367. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_object.rs +0 -0
  368. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_rational.rs +0 -0
  369. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_regexp.rs +0 -0
  370. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_struct.rs +0 -0
  371. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/range.rs +0 -0
  372. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/symbol.rs +0 -0
  373. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/allocate_before_init.rs +0 -0
  374. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/array_slice.rs +0 -0
  375. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/block_call.rs +0 -0
  376. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/bytes.rs +0 -0
  377. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/call_proc.rs +0 -0
  378. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/classname.rs +0 -0
  379. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/clone.rs +0 -0
  380. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/codepoints.rs +0 -0
  381. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/debug_exception.rs +0 -0
  382. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/encoding_capable.rs +0 -0
  383. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/enumerator.rs +0 -0
  384. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/enumeratorize.rs +0 -0
  385. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/float_convert_from_value.rs +0 -0
  386. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/float_convert_to_value.rs +0 -0
  387. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/fmt.rs +0 -0
  388. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/freeze.rs +0 -0
  389. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/integer_convert_to_value.rs +0 -0
  390. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/integer_traits.rs +0 -0
  391. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/ivar.rs +0 -0
  392. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/lazy_id.rs +0 -0
  393. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/make_proc.rs +0 -0
  394. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/proc_new.rs +0 -0
  395. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/range.rs +0 -0
  396. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/return_custom_error.rs +0 -0
  397. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/scan_args.rs +0 -0
  398. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/str.rs +0 -0
  399. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/struct.rs +0 -0
  400. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/symbol.rs +0 -0
  401. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/try_convert_array.rs +0 -0
  402. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/tuple_to_array.rs +0 -0
  403. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/typed_data.rs +0 -0
  404. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/typed_data_obj.rs +0 -0
  405. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/typed_data_subclass.rs +0 -0
  406. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/typed_data_subclass_from_ruby.rs +0 -0
  407. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/yield.rs +0 -0
  408. /data/ext/cargo-vendor/{magnus-macros-0.6.0 → magnus-macros-0.8.0}/LICENSE +0 -0
  409. /data/ext/cargo-vendor/{magnus-macros-0.6.0 → magnus-macros-0.8.0}/src/init.rs +0 -0
  410. /data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/LICENSE +0 -0
@@ -1,26 +1,25 @@
1
1
  use super::Serializer;
2
2
  use crate::error::Error;
3
- use magnus::{
4
- value::{qnil, ReprValue},
5
- IntoValue, RHash, Value,
6
- };
3
+ use magnus::{value::ReprValue, IntoValue, RHash, Ruby, Value};
7
4
  use serde::{ser::SerializeMap, Serialize};
8
5
 
9
- pub struct MapSerializer {
6
+ pub struct MapSerializer<'r> {
7
+ ruby: &'r Ruby,
10
8
  hash: RHash,
11
9
  key: Value,
12
10
  }
13
11
 
14
- impl MapSerializer {
15
- pub fn new(hash: RHash) -> MapSerializer {
12
+ impl<'r> MapSerializer<'r> {
13
+ pub fn new(ruby: &'r Ruby, hash: RHash) -> MapSerializer<'r> {
16
14
  MapSerializer {
15
+ ruby,
17
16
  hash,
18
- key: qnil().as_value(),
17
+ key: ruby.qnil().as_value(),
19
18
  }
20
19
  }
21
20
  }
22
21
 
23
- impl SerializeMap for MapSerializer {
22
+ impl<'r> SerializeMap for MapSerializer<'r> {
24
23
  type Ok = Value;
25
24
  type Error = Error;
26
25
 
@@ -28,7 +27,7 @@ impl SerializeMap for MapSerializer {
28
27
  where
29
28
  Key: Serialize + ?Sized,
30
29
  {
31
- self.key = key.serialize(Serializer)?;
30
+ self.key = key.serialize(Serializer::new(self.ruby))?;
32
31
  Ok(())
33
32
  }
34
33
 
@@ -37,11 +36,11 @@ impl SerializeMap for MapSerializer {
37
36
  Value: Serialize + ?Sized,
38
37
  {
39
38
  self.hash
40
- .aset(self.key, value.serialize(Serializer)?)
39
+ .aset(self.key, value.serialize(Serializer::new(self.ruby))?)
41
40
  .map_err(Into::into)
42
41
  }
43
42
 
44
43
  fn end(self) -> Result<Self::Ok, Self::Error> {
45
- Ok(self.hash.into_value())
44
+ Ok(self.hash.into_value_with(self.ruby))
46
45
  }
47
46
  }
@@ -15,7 +15,7 @@ use self::{
15
15
  tuple_variant_serializer::TupleVariantSerializer,
16
16
  };
17
17
 
18
- use magnus::{Error, TryConvert};
18
+ use magnus::{Error, Ruby, TryConvert};
19
19
  use serde::Serialize;
20
20
 
21
21
  /// Serialize Rust data to a Ruby [`Value`][`magnus::Value`].
@@ -35,16 +35,16 @@ use serde::Serialize;
35
35
  /// | `&[u8]` | A `String` with ASCII-8BIT encoding |
36
36
  ///
37
37
  /// ```
38
- /// # let _cleanup = unsafe { magnus::embed::init() };
38
+ /// # let ruby = unsafe { magnus::embed::init() };
39
39
  /// #
40
40
  /// use magnus::{eval, Value};
41
41
  /// use serde_magnus::serialize;
42
42
  ///
43
- /// let output: Value = serialize(&1234)?;
44
- /// assert!(eval!("output == 1234", output)?);
43
+ /// let output: Value = serialize(&ruby, &1234)?;
44
+ /// assert!(eval!(&ruby, "output == 1234", output)?);
45
45
  ///
46
- /// let output: Value = serialize("Hello, world!")?;
47
- /// assert!(eval!("output == 'Hello, world!'", output)?);
46
+ /// let output: Value = serialize(&ruby, "Hello, world!")?;
47
+ /// assert!(eval!(&ruby, "output == 'Hello, world!'", output)?);
48
48
  /// #
49
49
  /// # Ok::<(), magnus::Error>(())
50
50
  /// ```
@@ -57,15 +57,15 @@ use serde::Serialize;
57
57
  /// # use magnus::{eval, Value};
58
58
  /// # use serde_magnus::serialize;
59
59
  /// #
60
- /// # let _cleanup = unsafe { magnus::embed::init() };
60
+ /// # let ruby = unsafe { magnus::embed::init() };
61
61
  /// #
62
62
  /// let input: Option<u64> = None;
63
- /// let output: Value = serialize(&input)?;
64
- /// assert!(eval!("output == nil", output)?);
63
+ /// let output: Value = serialize(&ruby, &input)?;
64
+ /// assert!(eval!(&ruby, "output == nil", output)?);
65
65
  ///
66
66
  /// let input: Option<u64> = Some(1234);
67
- /// let output: Value = serialize(&input)?;
68
- /// assert!(eval!("output == 1234", output)?);
67
+ /// let output: Value = serialize(&ruby, &input)?;
68
+ /// assert!(eval!(&ruby, "output == 1234", output)?);
69
69
  /// #
70
70
  /// # Ok::<(), magnus::Error>(())
71
71
  /// ```
@@ -78,15 +78,15 @@ use serde::Serialize;
78
78
  /// # use magnus::{eval, Value};
79
79
  /// # use serde_magnus::serialize;
80
80
  /// #
81
- /// # let _cleanup = unsafe { magnus::embed::init() };
81
+ /// # let ruby = unsafe { magnus::embed::init() };
82
82
  /// #
83
83
  /// let input: Result<u64, &str> = Ok(1234);
84
- /// let output: Value = serialize(&input)?;
85
- /// assert!(eval!("output == { 'Ok' => 1234 }", output)?);
84
+ /// let output: Value = serialize(&ruby, &input)?;
85
+ /// assert!(eval!(&ruby, "output == { 'Ok' => 1234 }", output)?);
86
86
  ///
87
87
  /// let input: Result<u64, &str> = Err("something went wrong");
88
- /// let output: Value = serialize(&input)?;
89
- /// assert!(eval!("output == { 'Err' => 'something went wrong' }", output)?);
88
+ /// let output: Value = serialize(&ruby, &input)?;
89
+ /// assert!(eval!(&ruby, "output == { 'Err' => 'something went wrong' }", output)?);
90
90
  /// #
91
91
  /// # Ok::<(), magnus::Error>(())
92
92
  /// ```
@@ -99,15 +99,15 @@ use serde::Serialize;
99
99
  /// # use magnus::{eval, Value};
100
100
  /// # use serde_magnus::serialize;
101
101
  /// #
102
- /// # let _cleanup = unsafe { magnus::embed::init() };
102
+ /// # let ruby = unsafe { magnus::embed::init() };
103
103
  /// #
104
104
  /// use serde::Serialize;
105
105
  ///
106
106
  /// #[derive(Serialize)]
107
107
  /// struct Foo;
108
108
  ///
109
- /// let output: Value = serialize(&Foo)?;
110
- /// assert!(eval!("output == nil", output)?);
109
+ /// let output: Value = serialize(&ruby, &Foo)?;
110
+ /// assert!(eval!(&ruby, "output == nil", output)?);
111
111
  /// #
112
112
  /// # Ok::<(), magnus::Error>(())
113
113
  /// ```
@@ -119,14 +119,14 @@ use serde::Serialize;
119
119
  /// # use serde::Serialize;
120
120
  /// # use serde_magnus::serialize;
121
121
  /// #
122
- /// # let _cleanup = unsafe { magnus::embed::init() };
122
+ /// # let ruby = unsafe { magnus::embed::init() };
123
123
  /// #
124
124
  /// #[derive(Serialize)]
125
125
  /// struct Foo(u16);
126
126
  ///
127
127
  /// let input = Foo(1234);
128
- /// let output: Value = serialize(&input)?;
129
- /// assert!(eval!("output == 1234", output)?);
128
+ /// let output: Value = serialize(&ruby, &input)?;
129
+ /// assert!(eval!(&ruby, "output == 1234", output)?);
130
130
  /// #
131
131
  /// # Ok::<(), magnus::Error>(())
132
132
  /// ```
@@ -138,14 +138,14 @@ use serde::Serialize;
138
138
  /// # use serde::Serialize;
139
139
  /// # use serde_magnus::serialize;
140
140
  /// #
141
- /// # let _cleanup = unsafe { magnus::embed::init() };
141
+ /// # let ruby = unsafe { magnus::embed::init() };
142
142
  /// #
143
143
  /// #[derive(Serialize)]
144
144
  /// struct Foo<'a>(u16, bool, &'a str);
145
145
  ///
146
146
  /// let input = Foo(1234, false, "Hello, world!");
147
- /// let output: Value = serialize(&input)?;
148
- /// assert!(eval!("output == [1234, false, 'Hello, world!']", output)?);
147
+ /// let output: Value = serialize(&ruby, &input)?;
148
+ /// assert!(eval!(&ruby, "output == [1234, false, 'Hello, world!']", output)?);
149
149
  /// #
150
150
  /// # Ok::<(), magnus::Error>(())
151
151
  /// ```
@@ -157,7 +157,7 @@ use serde::Serialize;
157
157
  /// # use serde::Serialize;
158
158
  /// # use serde_magnus::serialize;
159
159
  /// #
160
- /// # let _cleanup = unsafe { magnus::embed::init() };
160
+ /// # let ruby = unsafe { magnus::embed::init() };
161
161
  /// #
162
162
  /// #[derive(Serialize)]
163
163
  /// struct Foo<'a> {
@@ -167,8 +167,9 @@ use serde::Serialize;
167
167
  /// }
168
168
  ///
169
169
  /// let input = Foo { bar: 1234, baz: false, glorp: "Hello, world!" };
170
- /// let output: Value = serialize(&input)?;
170
+ /// let output: Value = serialize(&ruby, &input)?;
171
171
  /// assert!(eval!(
172
+ /// &ruby,
172
173
  /// r#"
173
174
  /// output == {
174
175
  /// bar: 1234,
@@ -207,7 +208,7 @@ use serde::Serialize;
207
208
  /// # use serde::Serialize;
208
209
  /// # use serde_magnus::serialize;
209
210
  /// #
210
- /// # let _cleanup = unsafe { magnus::embed::init() };
211
+ /// # let ruby = unsafe { magnus::embed::init() };
211
212
  /// #
212
213
  /// # #[derive(Serialize)]
213
214
  /// # enum Foo<'a> {
@@ -221,8 +222,8 @@ use serde::Serialize;
221
222
  /// # }
222
223
  /// # }
223
224
  /// #
224
- /// let output: Value = serialize(&Foo::Bar)?;
225
- /// assert!(eval!("output == 'Bar'", output)?);
225
+ /// let output: Value = serialize(&ruby, &Foo::Bar)?;
226
+ /// assert!(eval!(&ruby, "output == 'Bar'", output)?);
226
227
  /// #
227
228
  /// # Ok::<(), magnus::Error>(())
228
229
  /// ```
@@ -237,7 +238,7 @@ use serde::Serialize;
237
238
  /// # use serde::Serialize;
238
239
  /// # use serde_magnus::serialize;
239
240
  /// #
240
- /// # let _cleanup = unsafe { magnus::embed::init() };
241
+ /// # let ruby = unsafe { magnus::embed::init() };
241
242
  /// #
242
243
  /// # #[derive(Serialize)]
243
244
  /// # enum Foo<'a> {
@@ -252,8 +253,8 @@ use serde::Serialize;
252
253
  /// # }
253
254
  /// #
254
255
  /// let input = Foo::Baz(1234);
255
- /// let output: Value = serialize(&input)?;
256
- /// assert!(eval!("output == { 'Baz' => 1234 }", output)?);
256
+ /// let output: Value = serialize(&ruby, &input)?;
257
+ /// assert!(eval!(&ruby, "output == { 'Baz' => 1234 }", output)?);
257
258
  /// #
258
259
  /// # Ok::<(), magnus::Error>(())
259
260
  /// ```
@@ -265,7 +266,7 @@ use serde::Serialize;
265
266
  /// # use serde::Serialize;
266
267
  /// # use serde_magnus::serialize;
267
268
  /// #
268
- /// # let _cleanup = unsafe { magnus::embed::init() };
269
+ /// # let ruby = unsafe { magnus::embed::init() };
269
270
  /// #
270
271
  /// # #[derive(Serialize)]
271
272
  /// # enum Foo<'a> {
@@ -280,8 +281,8 @@ use serde::Serialize;
280
281
  /// # }
281
282
  /// #
282
283
  /// let input = Foo::Glorp(1234, false, "Hello, world!");
283
- /// let output: Value = serialize(&input)?;
284
- /// assert!(eval!("output == { 'Glorp' => [1234, false, 'Hello, world!'] }", output)?);
284
+ /// let output: Value = serialize(&ruby, &input)?;
285
+ /// assert!(eval!(&ruby, "output == { 'Glorp' => [1234, false, 'Hello, world!'] }", output)?);
285
286
  /// #
286
287
  /// # Ok::<(), magnus::Error>(())
287
288
  /// ```
@@ -293,7 +294,7 @@ use serde::Serialize;
293
294
  /// # use serde::Serialize;
294
295
  /// # use serde_magnus::serialize;
295
296
  /// #
296
- /// # let _cleanup = unsafe { magnus::embed::init() };
297
+ /// # let ruby = unsafe { magnus::embed::init() };
297
298
  /// #
298
299
  /// # #[derive(Serialize)]
299
300
  /// # enum Foo<'a> {
@@ -308,8 +309,9 @@ use serde::Serialize;
308
309
  /// # }
309
310
  /// #
310
311
  /// let input = Foo::Quux { frob: 1234, wally: false, plugh: "Hello, world!" };
311
- /// let output: Value = serialize(&input)?;
312
+ /// let output: Value = serialize(&ruby, &input)?;
312
313
  /// assert!(eval!(
314
+ /// &ruby,
313
315
  /// r#"
314
316
  /// output == {
315
317
  /// "Quux" => {
@@ -334,15 +336,15 @@ use serde::Serialize;
334
336
  /// # use magnus::{eval, Value};
335
337
  /// # use serde_magnus::serialize;
336
338
  /// #
337
- /// # let _cleanup = unsafe { magnus::embed::init() };
339
+ /// # let ruby = unsafe { magnus::embed::init() };
338
340
  /// #
339
341
  /// let input = (123, false, "Hello, world!");
340
- /// let output: Value = serialize(&input)?;
341
- /// assert!(eval!("output == [123, false, 'Hello, world!']", output)?);
342
+ /// let output: Value = serialize(&ruby, &input)?;
343
+ /// assert!(eval!(&ruby, "output == [123, false, 'Hello, world!']", output)?);
342
344
  ///
343
345
  /// let input = [123, 456, 789];
344
- /// let output: Value = serialize(&input)?;
345
- /// assert!(eval!("output == [123, 456, 789]", output)?);
346
+ /// let output: Value = serialize(&ruby, &input)?;
347
+ /// assert!(eval!(&ruby, "output == [123, 456, 789]", output)?);
346
348
  /// #
347
349
  /// # Ok::<(), magnus::Error>(())
348
350
  /// ```
@@ -355,11 +357,11 @@ use serde::Serialize;
355
357
  /// # use magnus::{eval, Value};
356
358
  /// # use serde_magnus::serialize;
357
359
  /// #
358
- /// # let _cleanup = unsafe { magnus::embed::init() };
360
+ /// # let ruby = unsafe { magnus::embed::init() };
359
361
  /// #
360
362
  /// let input = vec![123, 456, 789];
361
- /// let output: Value = serialize(&input)?;
362
- /// assert!(eval!("output == [123, 456, 789]", output)?);
363
+ /// let output: Value = serialize(&ruby, &input)?;
364
+ /// assert!(eval!(&ruby, "output == [123, 456, 789]", output)?);
363
365
  /// #
364
366
  /// # Ok::<(), magnus::Error>(())
365
367
  /// ```
@@ -370,7 +372,7 @@ use serde::Serialize;
370
372
  /// # use magnus::{eval, Value};
371
373
  /// # use serde_magnus::serialize;
372
374
  /// #
373
- /// # let _cleanup = unsafe { magnus::embed::init() };
375
+ /// # let ruby = unsafe { magnus::embed::init() };
374
376
  /// #
375
377
  /// use std::collections::HashMap;
376
378
  ///
@@ -380,8 +382,9 @@ use serde::Serialize;
380
382
  /// input.insert("high", "low");
381
383
  /// input.insert("goodbye", "hello");
382
384
  ///
383
- /// let output: Value = serialize(&input)?;
385
+ /// let output: Value = serialize(&ruby, &input)?;
384
386
  /// assert!(eval!(
387
+ /// &ruby,
385
388
  /// r#"
386
389
  /// output == {
387
390
  /// "yes" => "no",
@@ -395,10 +398,10 @@ use serde::Serialize;
395
398
  /// #
396
399
  /// # Ok::<(), magnus::Error>(())
397
400
  /// ```
398
- pub fn serialize<Input, Output>(input: &Input) -> Result<Output, Error>
401
+ pub fn serialize<Input, Output>(ruby: &Ruby, input: &Input) -> Result<Output, Error>
399
402
  where
400
403
  Input: Serialize + ?Sized,
401
404
  Output: TryConvert,
402
405
  {
403
- TryConvert::try_convert(input.serialize(Serializer)?)
406
+ TryConvert::try_convert(input.serialize(Serializer::new(ruby))?)
404
407
  }
@@ -1,22 +1,23 @@
1
1
  use super::Serializer;
2
2
  use crate::error::Error;
3
- use magnus::{IntoValue, RArray, Value};
3
+ use magnus::{IntoValue, RArray, Ruby, Value};
4
4
  use serde::{
5
5
  ser::{SerializeSeq, SerializeTuple, SerializeTupleStruct},
6
6
  Serialize,
7
7
  };
8
8
 
9
- pub struct SeqSerializer {
9
+ pub struct SeqSerializer<'r> {
10
+ ruby: &'r Ruby,
10
11
  array: RArray,
11
12
  }
12
13
 
13
- impl SeqSerializer {
14
- pub fn new(array: RArray) -> SeqSerializer {
15
- SeqSerializer { array }
14
+ impl<'r> SeqSerializer<'r> {
15
+ pub fn new(ruby: &'r Ruby, array: RArray) -> SeqSerializer<'r> {
16
+ SeqSerializer { ruby, array }
16
17
  }
17
18
  }
18
19
 
19
- impl SerializeSeq for SeqSerializer {
20
+ impl<'r> SerializeSeq for SeqSerializer<'r> {
20
21
  type Ok = Value;
21
22
  type Error = Error;
22
23
 
@@ -25,16 +26,16 @@ impl SerializeSeq for SeqSerializer {
25
26
  Element: Serialize + ?Sized,
26
27
  {
27
28
  self.array
28
- .push(element.serialize(Serializer)?)
29
+ .push(element.serialize(Serializer::new(self.ruby))?)
29
30
  .map_err(Into::into)
30
31
  }
31
32
 
32
33
  fn end(self) -> Result<Self::Ok, self::Error> {
33
- Ok(self.array.into_value())
34
+ Ok(self.array.into_value_with(self.ruby))
34
35
  }
35
36
  }
36
37
 
37
- impl SerializeTuple for SeqSerializer {
38
+ impl<'r> SerializeTuple for SeqSerializer<'r> {
38
39
  type Ok = Value;
39
40
  type Error = Error;
40
41
 
@@ -50,7 +51,7 @@ impl SerializeTuple for SeqSerializer {
50
51
  }
51
52
  }
52
53
 
53
- impl SerializeTupleStruct for SeqSerializer {
54
+ impl<'r> SerializeTupleStruct for SeqSerializer<'r> {
54
55
  type Ok = Value;
55
56
  type Error = Error;
56
57
 
@@ -1,4 +1,4 @@
1
- use magnus::{IntoValue, RArray, RHash, RString, Value};
1
+ use magnus::{IntoValue, Ruby, Value};
2
2
  use serde::Serialize;
3
3
 
4
4
  use super::{
@@ -7,78 +7,86 @@ use super::{
7
7
  };
8
8
  use crate::error::Error;
9
9
 
10
- pub struct Serializer;
10
+ pub struct Serializer<'r> {
11
+ ruby: &'r Ruby,
12
+ }
13
+
14
+ impl<'r> Serializer<'r> {
15
+ pub fn new(ruby: &'r Ruby) -> Self {
16
+ Self { ruby }
17
+ }
18
+ }
11
19
 
12
- impl serde::Serializer for Serializer {
20
+ impl<'r> serde::Serializer for Serializer<'r> {
13
21
  type Ok = Value;
14
22
  type Error = Error;
15
23
 
16
- type SerializeSeq = SeqSerializer;
17
- type SerializeTuple = SeqSerializer;
18
- type SerializeTupleStruct = SeqSerializer;
19
- type SerializeTupleVariant = TupleVariantSerializer;
20
- type SerializeMap = MapSerializer;
21
- type SerializeStruct = StructSerializer;
22
- type SerializeStructVariant = StructVariantSerializer;
24
+ type SerializeSeq = SeqSerializer<'r>;
25
+ type SerializeTuple = SeqSerializer<'r>;
26
+ type SerializeTupleStruct = SeqSerializer<'r>;
27
+ type SerializeTupleVariant = TupleVariantSerializer<'r>;
28
+ type SerializeMap = MapSerializer<'r>;
29
+ type SerializeStruct = StructSerializer<'r>;
30
+ type SerializeStructVariant = StructVariantSerializer<'r>;
23
31
 
24
32
  fn serialize_bool(self, value: bool) -> Result<Self::Ok, Self::Error> {
25
- Ok(value.into_value())
33
+ Ok(value.into_value_with(self.ruby))
26
34
  }
27
35
 
28
36
  fn serialize_i8(self, value: i8) -> Result<Self::Ok, Self::Error> {
29
- Ok(value.into_value())
37
+ Ok(value.into_value_with(self.ruby))
30
38
  }
31
39
 
32
40
  fn serialize_i16(self, value: i16) -> Result<Self::Ok, Self::Error> {
33
- Ok(value.into_value())
41
+ Ok(value.into_value_with(self.ruby))
34
42
  }
35
43
 
36
44
  fn serialize_i32(self, value: i32) -> Result<Self::Ok, Self::Error> {
37
- Ok(value.into_value())
45
+ Ok(value.into_value_with(self.ruby))
38
46
  }
39
47
 
40
48
  fn serialize_i64(self, value: i64) -> Result<Self::Ok, Self::Error> {
41
- Ok(value.into_value())
49
+ Ok(value.into_value_with(self.ruby))
42
50
  }
43
51
 
44
52
  fn serialize_u8(self, value: u8) -> Result<Self::Ok, Self::Error> {
45
- Ok(value.into_value())
53
+ Ok(value.into_value_with(self.ruby))
46
54
  }
47
55
 
48
56
  fn serialize_u16(self, value: u16) -> Result<Self::Ok, Self::Error> {
49
- Ok(value.into_value())
57
+ Ok(value.into_value_with(self.ruby))
50
58
  }
51
59
 
52
60
  fn serialize_u32(self, value: u32) -> Result<Self::Ok, Self::Error> {
53
- Ok(value.into_value())
61
+ Ok(value.into_value_with(self.ruby))
54
62
  }
55
63
 
56
64
  fn serialize_u64(self, value: u64) -> Result<Self::Ok, Self::Error> {
57
- Ok(value.into_value())
65
+ Ok(value.into_value_with(self.ruby))
58
66
  }
59
67
 
60
68
  fn serialize_f32(self, value: f32) -> Result<Self::Ok, Self::Error> {
61
- Ok(value.into_value())
69
+ Ok(value.into_value_with(self.ruby))
62
70
  }
63
71
 
64
72
  fn serialize_f64(self, value: f64) -> Result<Self::Ok, Self::Error> {
65
- Ok(value.into_value())
73
+ Ok(value.into_value_with(self.ruby))
66
74
  }
67
75
 
68
76
  fn serialize_char(self, value: char) -> Result<Self::Ok, Self::Error> {
69
- Ok(value.into_value())
77
+ Ok(value.into_value_with(self.ruby))
70
78
  }
71
79
 
72
80
  fn serialize_str(self, value: &str) -> Result<Self::Ok, Self::Error> {
73
- Ok(value.into_value())
81
+ Ok(value.into_value_with(self.ruby))
74
82
  }
75
83
 
76
84
  fn serialize_bytes(self, value: &[u8]) -> Result<Self::Ok, Self::Error> {
77
- Ok(RString::from_slice(value).into_value())
85
+ Ok(self.ruby.str_from_slice(value).into_value_with(self.ruby))
78
86
  }
79
87
 
80
88
  fn serialize_none(self) -> Result<Self::Ok, Self::Error> {
81
- Ok(().into_value())
89
+ Ok(().into_value_with(self.ruby))
82
90
  }
83
91
 
84
92
  fn serialize_some<Value>(self, value: &Value) -> Result<Self::Ok, Self::Error>
@@ -89,11 +97,11 @@ impl serde::Serializer for Serializer {
89
97
  }
90
98
 
91
99
  fn serialize_unit(self) -> Result<Self::Ok, Self::Error> {
92
- Ok(().into_value())
100
+ Ok(().into_value_with(self.ruby))
93
101
  }
94
102
 
95
103
  fn serialize_unit_struct(self, _name: &'static str) -> Result<Self::Ok, Self::Error> {
96
- Ok(().into_value())
104
+ Ok(().into_value_with(self.ruby))
97
105
  }
98
106
 
99
107
  fn serialize_unit_variant(
@@ -102,7 +110,7 @@ impl serde::Serializer for Serializer {
102
110
  _index: u32,
103
111
  variant: &'static str,
104
112
  ) -> Result<Self::Ok, Self::Error> {
105
- Ok(variant.into_value())
113
+ Ok(variant.into_value_with(self.ruby))
106
114
  }
107
115
 
108
116
  fn serialize_newtype_struct<Value>(
@@ -126,11 +134,14 @@ impl serde::Serializer for Serializer {
126
134
  where
127
135
  Value: Serialize + ?Sized,
128
136
  {
129
- nest(variant, value.serialize(self)?)
137
+ nest(self.ruby, variant, value.serialize(self)?)
130
138
  }
131
139
 
132
140
  fn serialize_seq(self, len: Option<usize>) -> Result<Self::SerializeSeq, Self::Error> {
133
- Ok(SeqSerializer::new(RArray::with_capacity(len.unwrap_or(0))))
141
+ Ok(SeqSerializer::new(
142
+ self.ruby,
143
+ self.ruby.ary_new_capa(len.unwrap_or(0)),
144
+ ))
134
145
  }
135
146
 
136
147
  fn serialize_tuple(self, len: usize) -> Result<Self::SerializeTuple, Self::Error> {
@@ -153,13 +164,14 @@ impl serde::Serializer for Serializer {
153
164
  len: usize,
154
165
  ) -> Result<Self::SerializeTupleVariant, Self::Error> {
155
166
  Ok(TupleVariantSerializer::new(
167
+ self.ruby,
156
168
  variant,
157
- RArray::with_capacity(len),
169
+ self.ruby.ary_new_capa(len),
158
170
  ))
159
171
  }
160
172
 
161
173
  fn serialize_map(self, _len: Option<usize>) -> Result<Self::SerializeMap, Self::Error> {
162
- Ok(MapSerializer::new(RHash::new()))
174
+ Ok(MapSerializer::new(self.ruby, self.ruby.hash_new()))
163
175
  }
164
176
 
165
177
  fn serialize_struct(
@@ -167,7 +179,7 @@ impl serde::Serializer for Serializer {
167
179
  _name: &'static str,
168
180
  _len: usize,
169
181
  ) -> Result<Self::SerializeStruct, Self::Error> {
170
- Ok(StructSerializer::new(RHash::new()))
182
+ Ok(StructSerializer::new(self.ruby, self.ruby.hash_new()))
171
183
  }
172
184
 
173
185
  fn serialize_struct_variant(
@@ -177,6 +189,10 @@ impl serde::Serializer for Serializer {
177
189
  variant: &'static str,
178
190
  _len: usize,
179
191
  ) -> Result<Self::SerializeStructVariant, Self::Error> {
180
- Ok(StructVariantSerializer::new(variant, RHash::new()))
192
+ Ok(StructVariantSerializer::new(
193
+ self.ruby,
194
+ variant,
195
+ self.ruby.hash_new(),
196
+ ))
181
197
  }
182
198
  }
@@ -0,0 +1,40 @@
1
+ use super::Serializer;
2
+ use crate::error::Error;
3
+ use magnus::{IntoValue, RHash, Ruby, Value};
4
+ use serde::{ser::SerializeStruct, Serialize};
5
+
6
+ pub struct StructSerializer<'r> {
7
+ ruby: &'r Ruby,
8
+ hash: RHash,
9
+ }
10
+
11
+ impl<'r> StructSerializer<'r> {
12
+ pub fn new(ruby: &'r Ruby, hash: RHash) -> StructSerializer<'r> {
13
+ StructSerializer { ruby, hash }
14
+ }
15
+ }
16
+
17
+ impl<'r> SerializeStruct for StructSerializer<'r> {
18
+ type Ok = Value;
19
+ type Error = Error;
20
+
21
+ fn serialize_field<Value>(
22
+ &mut self,
23
+ name: &'static str,
24
+ value: &Value,
25
+ ) -> Result<(), Self::Error>
26
+ where
27
+ Value: Serialize + ?Sized,
28
+ {
29
+ self.hash
30
+ .aset(
31
+ self.ruby.to_symbol(name),
32
+ value.serialize(Serializer::new(self.ruby))?,
33
+ )
34
+ .map_err(Into::into)
35
+ }
36
+
37
+ fn end(self) -> Result<Self::Ok, Self::Error> {
38
+ Ok(self.hash.into_value_with(self.ruby))
39
+ }
40
+ }