code_ownership 2.1.0 → 2.1.1
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.
- checksums.yaml +4 -4
- data/Cargo.lock +8 -14
- data/ext/cargo-vendor/magnus-0.8.2/.cargo-checksum.json +1 -0
- data/ext/cargo-vendor/magnus-0.8.2/.cargo_vcs_info.json +6 -0
- data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/CHANGELOG.md +66 -1
- data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/Cargo.lock +243 -9
- data/ext/cargo-vendor/magnus-0.8.2/Cargo.toml +277 -0
- data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/Cargo.toml.orig +11 -6
- data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/README.md +75 -23
- data/ext/cargo-vendor/magnus-0.8.2/build.rs +15 -0
- data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/complete_object/test/temperature_test.rb +4 -4
- data/ext/cargo-vendor/magnus-0.8.2/examples/inheritance.rs +66 -0
- data/ext/cargo-vendor/magnus-0.8.2/examples/mut_point.rs +116 -0
- data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/api.rs +4 -3
- data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/class.rs +9 -7
- data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/encoding.rs +5 -5
- data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/error.rs +12 -3
- data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/fiber.rs +5 -5
- data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/gc.rs +3 -3
- data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/integer.rs +134 -0
- data/ext/cargo-vendor/magnus-0.8.2/src/io.rs +230 -0
- data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/lib.rs +53 -54
- data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/macros.rs +2 -2
- data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/method.rs +14 -100
- data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/module.rs +1 -1
- data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/mutex.rs +1 -1
- data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_array.rs +2 -2
- data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_bignum.rs +100 -3
- data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_hash.rs +63 -1
- data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_string.rs +31 -231
- data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_typed_data.rs +6 -9
- data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/rb_sys.rs +4 -4
- data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/scan_args.rs +3 -3
- data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/thread.rs +16 -10
- data/ext/cargo-vendor/magnus-0.8.2/src/time.rs +462 -0
- data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/try_convert.rs +64 -2
- data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/typed_data.rs +113 -11
- data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/value/flonum.rs +1 -1
- data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/value.rs +83 -6
- data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/test +1 -1
- data/ext/cargo-vendor/magnus-0.8.2/tests/hash.rs +44 -0
- data/ext/cargo-vendor/magnus-0.8.2/tests/io.rs +62 -0
- data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/return_iter.rs +1 -1
- data/ext/cargo-vendor/magnus-0.8.2/tests/string.rs +23 -0
- data/ext/cargo-vendor/magnus-0.8.2/tests/time.rs +71 -0
- data/ext/cargo-vendor/magnus-macros-0.8.0/.cargo-checksum.json +1 -0
- data/ext/cargo-vendor/magnus-macros-0.8.0/.cargo_vcs_info.json +6 -0
- data/ext/cargo-vendor/magnus-macros-0.8.0/Cargo.lock +47 -0
- data/ext/cargo-vendor/{magnus-macros-0.6.0 → magnus-macros-0.8.0}/Cargo.toml +10 -1
- data/ext/cargo-vendor/{magnus-macros-0.6.0 → magnus-macros-0.8.0}/Cargo.toml.orig +1 -1
- data/ext/cargo-vendor/magnus-macros-0.8.0/src/lib.rs +545 -0
- data/ext/cargo-vendor/{magnus-macros-0.6.0 → magnus-macros-0.8.0}/src/typed_data.rs +3 -3
- data/ext/cargo-vendor/{magnus-macros-0.6.0 → magnus-macros-0.8.0}/src/util.rs +1 -1
- data/ext/cargo-vendor/serde_magnus-0.10.0/.cargo-checksum.json +1 -0
- data/ext/cargo-vendor/serde_magnus-0.10.0/.cargo_vcs_info.json +6 -0
- data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/Cargo.lock +77 -75
- data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/Cargo.toml +3 -3
- data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/Cargo.toml.orig +7 -4
- data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/README.md +8 -5
- data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/de/array_deserializer.rs +12 -8
- data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/de/array_enumerator.rs +12 -7
- data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/de/deserializer.rs +21 -18
- data/ext/cargo-vendor/serde_magnus-0.10.0/src/de/enum_deserializer.rs +35 -0
- data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/de/hash_deserializer.rs +18 -11
- data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/de/mod.rs +76 -76
- data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/de/variant_deserializer.rs +10 -9
- data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/error.rs +10 -4
- data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/lib.rs +6 -5
- data/ext/cargo-vendor/serde_magnus-0.10.0/src/ser/enums.rs +11 -0
- data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/ser/map_serializer.rs +11 -12
- data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/ser/mod.rs +53 -50
- data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/ser/seq_serializer.rs +11 -10
- data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/ser/serializer.rs +50 -34
- data/ext/cargo-vendor/serde_magnus-0.10.0/src/ser/struct_serializer.rs +40 -0
- data/ext/cargo-vendor/serde_magnus-0.10.0/src/ser/struct_variant_serializer.rs +45 -0
- data/ext/cargo-vendor/serde_magnus-0.10.0/src/ser/tuple_variant_serializer.rs +38 -0
- data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/deserializing_arrays.rs +3 -3
- data/ext/cargo-vendor/serde_magnus-0.10.0/tests/deserializing_booleans.rs +15 -0
- data/ext/cargo-vendor/serde_magnus-0.10.0/tests/deserializing_enums.rs +39 -0
- data/ext/cargo-vendor/serde_magnus-0.10.0/tests/deserializing_floats.rs +12 -0
- data/ext/cargo-vendor/serde_magnus-0.10.0/tests/deserializing_integers.rs +18 -0
- data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/deserializing_maps.rs +3 -2
- data/ext/cargo-vendor/serde_magnus-0.10.0/tests/deserializing_options.rs +15 -0
- data/ext/cargo-vendor/serde_magnus-0.10.0/tests/deserializing_results.rs +17 -0
- data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/deserializing_strings.rs +7 -7
- data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/deserializing_structs.rs +9 -9
- data/ext/cargo-vendor/serde_magnus-0.10.0/tests/deserializing_tuples.rs +27 -0
- data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/deserializing_vecs.rs +3 -3
- data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/serializing_arrays.rs +3 -3
- data/ext/cargo-vendor/serde_magnus-0.10.0/tests/serializing_booleans.rs +15 -0
- data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/serializing_enums.rs +9 -7
- data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/serializing_floats.rs +2 -2
- data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/serializing_integers.rs +4 -4
- data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/serializing_maps.rs +3 -2
- data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/serializing_options.rs +3 -3
- data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/serializing_results.rs +5 -4
- data/ext/cargo-vendor/serde_magnus-0.10.0/tests/serializing_strings.rs +30 -0
- data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/serializing_structs.rs +15 -7
- data/ext/cargo-vendor/serde_magnus-0.10.0/tests/serializing_tuples.rs +35 -0
- data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/serializing_vecs.rs +3 -3
- data/ext/code_ownership/Cargo.toml +2 -2
- data/ext/code_ownership/extconf.rb +2 -1
- data/ext/code_ownership/src/lib.rs +16 -16
- data/lib/code_ownership/cli.rb +1 -0
- data/lib/code_ownership/private/file_path_finder.rb +3 -7
- data/lib/code_ownership/private/file_path_team_cache.rb +5 -9
- data/lib/code_ownership/private/for_file_output_builder.rb +0 -1
- data/lib/code_ownership/private/team_finder.rb +8 -14
- data/lib/code_ownership/version.rb +2 -2
- data/lib/code_ownership.rb +12 -17
- metadata +182 -186
- data/ext/cargo-vendor/magnus-0.7.1/.cargo-checksum.json +0 -1
- data/ext/cargo-vendor/magnus-0.7.1/.cargo_vcs_info.json +0 -6
- data/ext/cargo-vendor/magnus-0.7.1/Cargo.toml +0 -95
- data/ext/cargo-vendor/magnus-0.7.1/build.rs +0 -5
- data/ext/cargo-vendor/magnus-0.7.1/examples/mut_point.rs +0 -60
- data/ext/cargo-vendor/magnus-0.7.1/src/time.rs +0 -190
- data/ext/cargo-vendor/magnus-0.7.1/tests/hash.rs +0 -25
- data/ext/cargo-vendor/magnus-0.7.1/tests/string.rs +0 -13
- data/ext/cargo-vendor/magnus-macros-0.6.0/.cargo-checksum.json +0 -1
- data/ext/cargo-vendor/magnus-macros-0.6.0/.cargo_vcs_info.json +0 -6
- data/ext/cargo-vendor/magnus-macros-0.6.0/src/lib.rs +0 -401
- data/ext/cargo-vendor/rb-sys-env-0.1.2/.cargo-checksum.json +0 -1
- data/ext/cargo-vendor/rb-sys-env-0.1.2/.cargo_vcs_info.json +0 -6
- data/ext/cargo-vendor/rb-sys-env-0.1.2/Cargo.toml +0 -25
- data/ext/cargo-vendor/rb-sys-env-0.1.2/Cargo.toml.orig +0 -14
- data/ext/cargo-vendor/rb-sys-env-0.1.2/LICENSE-APACHE +0 -190
- data/ext/cargo-vendor/rb-sys-env-0.1.2/LICENSE-MIT +0 -21
- data/ext/cargo-vendor/rb-sys-env-0.1.2/readme.md +0 -119
- data/ext/cargo-vendor/rb-sys-env-0.1.2/src/defines.rs +0 -37
- data/ext/cargo-vendor/rb-sys-env-0.1.2/src/lib.rs +0 -180
- data/ext/cargo-vendor/rb-sys-env-0.1.2/src/rb_env.rs +0 -110
- data/ext/cargo-vendor/rb-sys-env-0.1.2/src/ruby_version.rs +0 -163
- data/ext/cargo-vendor/rb-sys-env-0.1.2/src/utils.rs +0 -6
- data/ext/cargo-vendor/serde_magnus-0.9.0/.cargo-checksum.json +0 -1
- data/ext/cargo-vendor/serde_magnus-0.9.0/.cargo_vcs_info.json +0 -6
- data/ext/cargo-vendor/serde_magnus-0.9.0/src/de/enum_deserializer.rs +0 -30
- data/ext/cargo-vendor/serde_magnus-0.9.0/src/ser/enums.rs +0 -11
- data/ext/cargo-vendor/serde_magnus-0.9.0/src/ser/struct_serializer.rs +0 -36
- data/ext/cargo-vendor/serde_magnus-0.9.0/src/ser/struct_variant_serializer.rs +0 -37
- data/ext/cargo-vendor/serde_magnus-0.9.0/src/ser/tuple_variant_serializer.rs +0 -33
- data/ext/cargo-vendor/serde_magnus-0.9.0/tests/deserializing_booleans.rs +0 -18
- data/ext/cargo-vendor/serde_magnus-0.9.0/tests/deserializing_enums.rs +0 -39
- data/ext/cargo-vendor/serde_magnus-0.9.0/tests/deserializing_floats.rs +0 -12
- data/ext/cargo-vendor/serde_magnus-0.9.0/tests/deserializing_integers.rs +0 -18
- data/ext/cargo-vendor/serde_magnus-0.9.0/tests/deserializing_options.rs +0 -15
- data/ext/cargo-vendor/serde_magnus-0.9.0/tests/deserializing_results.rs +0 -17
- data/ext/cargo-vendor/serde_magnus-0.9.0/tests/deserializing_tuples.rs +0 -31
- data/ext/cargo-vendor/serde_magnus-0.9.0/tests/serializing_booleans.rs +0 -15
- data/ext/cargo-vendor/serde_magnus-0.9.0/tests/serializing_strings.rs +0 -30
- data/ext/cargo-vendor/serde_magnus-0.9.0/tests/serializing_tuples.rs +0 -27
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/.cargo/config.toml +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/Gemfile +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/LICENSE +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/complete_object/Rakefile +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/complete_object/lib/temperature.rb +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/custom_exception_ruby/Rakefile +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/custom_exception_ruby/lib/ahriman/error.rb +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/custom_exception_ruby/lib/ahriman.rb +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/custom_exception_ruby/test/error_test.rb +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/custom_exception_rust/Rakefile +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/custom_exception_rust/lib/ahriman.rb +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/custom_exception_rust/test/error_test.rb +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/fibonacci.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/hello_world.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/point.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/rust_blank/Rakefile +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/rust_blank/lib/rust_blank.rb +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/rust_blank/test/bench.rb +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/rust_blank/test/blank_test.rb +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/block.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/embed.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/enumerator.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/exception.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/float.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/into_value.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/numeric.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/object.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/process.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_complex.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_file.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_float.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_match.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_object.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_rational.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_regexp.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_struct.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/range.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/symbol.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/allocate_before_init.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/array_slice.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/block_call.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/bytes.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/call_proc.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/classname.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/clone.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/codepoints.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/debug_exception.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/encoding_capable.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/enumerator.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/enumeratorize.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/float_convert_from_value.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/float_convert_to_value.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/fmt.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/freeze.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/integer_convert_to_value.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/integer_traits.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/ivar.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/lazy_id.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/make_proc.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/proc_new.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/range.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/return_custom_error.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/scan_args.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/str.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/struct.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/symbol.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/try_convert_array.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/tuple_to_array.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/typed_data.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/typed_data_obj.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/typed_data_subclass.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/typed_data_subclass_from_ruby.rs +0 -0
- /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/yield.rs +0 -0
- /data/ext/cargo-vendor/{magnus-macros-0.6.0 → magnus-macros-0.8.0}/LICENSE +0 -0
- /data/ext/cargo-vendor/{magnus-macros-0.6.0 → magnus-macros-0.8.0}/src/init.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/LICENSE +0 -0
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
use std::cell::RefCell;
|
|
2
|
-
|
|
3
|
-
use magnus::{function, method, prelude::*, wrap};
|
|
4
|
-
|
|
5
|
-
struct Point {
|
|
6
|
-
x: isize,
|
|
7
|
-
y: isize,
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
#[wrap(class = "Point")]
|
|
11
|
-
struct MutPoint(RefCell<Point>);
|
|
12
|
-
|
|
13
|
-
impl MutPoint {
|
|
14
|
-
fn new(x: isize, y: isize) -> Self {
|
|
15
|
-
Self(RefCell::new(Point { x, y }))
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
fn x(&self) -> isize {
|
|
19
|
-
self.0.borrow().x
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
fn set_x(&self, val: isize) {
|
|
23
|
-
self.0.borrow_mut().x = val;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
fn y(&self) -> isize {
|
|
27
|
-
self.0.borrow().y
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
fn set_y(&self, val: isize) {
|
|
31
|
-
self.0.borrow_mut().y = val;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
fn distance(&self, other: &MutPoint) -> f64 {
|
|
35
|
-
(((other.x() - self.x()).pow(2) + (other.y() - self.y()).pow(2)) as f64).sqrt()
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
fn main() -> Result<(), String> {
|
|
40
|
-
magnus::Ruby::init(|ruby| {
|
|
41
|
-
let class = ruby.define_class("Point", ruby.class_object())?;
|
|
42
|
-
class.define_singleton_method("new", function!(MutPoint::new, 2))?;
|
|
43
|
-
class.define_method("x", method!(MutPoint::x, 0))?;
|
|
44
|
-
class.define_method("x=", method!(MutPoint::set_x, 1))?;
|
|
45
|
-
class.define_method("y", method!(MutPoint::y, 0))?;
|
|
46
|
-
class.define_method("y=", method!(MutPoint::set_y, 1))?;
|
|
47
|
-
class.define_method("distance", method!(MutPoint::distance, 1))?;
|
|
48
|
-
|
|
49
|
-
let d: f64 = ruby.eval(
|
|
50
|
-
"a = Point.new(0, 0)
|
|
51
|
-
b = Point.new(0, 0)
|
|
52
|
-
b.x = 5
|
|
53
|
-
b.y = 10
|
|
54
|
-
a.distance(b)",
|
|
55
|
-
)?;
|
|
56
|
-
|
|
57
|
-
println!("{}", d);
|
|
58
|
-
Ok(())
|
|
59
|
-
})
|
|
60
|
-
}
|
|
@@ -1,190 +0,0 @@
|
|
|
1
|
-
use std::{
|
|
2
|
-
fmt,
|
|
3
|
-
time::{Duration, SystemTime},
|
|
4
|
-
};
|
|
5
|
-
|
|
6
|
-
use rb_sys::{rb_time_new, rb_time_timeval, rb_time_utc_offset, timeval, VALUE};
|
|
7
|
-
|
|
8
|
-
use crate::{
|
|
9
|
-
api::Ruby,
|
|
10
|
-
error::{protect, Error},
|
|
11
|
-
into_value::IntoValue,
|
|
12
|
-
object::Object,
|
|
13
|
-
r_typed_data::RTypedData,
|
|
14
|
-
try_convert::TryConvert,
|
|
15
|
-
value::{
|
|
16
|
-
private::{self, ReprValue as _},
|
|
17
|
-
Fixnum, ReprValue, Value,
|
|
18
|
-
},
|
|
19
|
-
};
|
|
20
|
-
|
|
21
|
-
/// # `Time`
|
|
22
|
-
///
|
|
23
|
-
/// Functions to create and work with Ruby `Time` objects.
|
|
24
|
-
///
|
|
25
|
-
/// See also the [`Time`] type.
|
|
26
|
-
impl Ruby {
|
|
27
|
-
/// Create a new `Time` in the local timezone.
|
|
28
|
-
///
|
|
29
|
-
/// # Examples
|
|
30
|
-
///
|
|
31
|
-
/// ```
|
|
32
|
-
/// use magnus::{rb_assert, Error, Ruby};
|
|
33
|
-
///
|
|
34
|
-
/// fn example(ruby: &Ruby) -> Result<(), Error> {
|
|
35
|
-
/// let t = ruby.time_new(1654013280, 0)?;
|
|
36
|
-
///
|
|
37
|
-
/// rb_assert!(ruby, r#"t == Time.new(2022, 5, 31, 9, 8, 0, "-07:00")"#, t);
|
|
38
|
-
///
|
|
39
|
-
/// Ok(())
|
|
40
|
-
/// }
|
|
41
|
-
/// # Ruby::init(example).unwrap()
|
|
42
|
-
/// ```
|
|
43
|
-
pub fn time_new(&self, seconds: i64, microseconds: i64) -> Result<Time, Error> {
|
|
44
|
-
protect(|| unsafe {
|
|
45
|
-
Time::from_rb_value_unchecked(rb_time_new(
|
|
46
|
-
seconds.try_into().unwrap(),
|
|
47
|
-
microseconds.try_into().unwrap(),
|
|
48
|
-
))
|
|
49
|
-
})
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
/// Wrapper type for a Value known to be an instance of Ruby's Time class.
|
|
54
|
-
///
|
|
55
|
-
/// See the [`ReprValue`] and [`Object`] traits for additional methods
|
|
56
|
-
/// available on this type. See [`Ruby`](Ruby#time) for methods to create a
|
|
57
|
-
/// `Time`.
|
|
58
|
-
#[derive(Clone, Copy)]
|
|
59
|
-
#[repr(transparent)]
|
|
60
|
-
pub struct Time(RTypedData);
|
|
61
|
-
|
|
62
|
-
impl Time {
|
|
63
|
-
/// Return `Some(Time)` if `val` is a `Time`, `None` otherwise.
|
|
64
|
-
///
|
|
65
|
-
/// # Examples
|
|
66
|
-
///
|
|
67
|
-
/// ```
|
|
68
|
-
/// use magnus::eval;
|
|
69
|
-
/// # let _cleanup = unsafe { magnus::embed::init() };
|
|
70
|
-
///
|
|
71
|
-
/// assert!(magnus::Time::from_value(eval("Time.now").unwrap()).is_some());
|
|
72
|
-
/// assert!(magnus::Time::from_value(eval("0").unwrap()).is_none());
|
|
73
|
-
/// ```
|
|
74
|
-
#[inline]
|
|
75
|
-
pub fn from_value(val: Value) -> Option<Self> {
|
|
76
|
-
RTypedData::from_value(val)
|
|
77
|
-
.filter(|_| val.is_kind_of(Ruby::get_with(val).class_time()))
|
|
78
|
-
.map(Self)
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
#[inline]
|
|
82
|
-
pub(crate) unsafe fn from_rb_value_unchecked(val: VALUE) -> Self {
|
|
83
|
-
Self(RTypedData::from_rb_value_unchecked(val))
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
/// Returns the timezone offset of `self` from UTC in seconds.
|
|
87
|
-
///
|
|
88
|
-
/// # Examples
|
|
89
|
-
///
|
|
90
|
-
/// ```
|
|
91
|
-
/// use magnus::{Error, Ruby, Time};
|
|
92
|
-
///
|
|
93
|
-
/// fn example(ruby: &Ruby) -> Result<(), Error> {
|
|
94
|
-
/// let t: Time = ruby.eval(r#"Time.new(2022, 5, 31, 9, 8, 0, "-07:00")"#)?;
|
|
95
|
-
///
|
|
96
|
-
/// assert_eq!(t.utc_offset(), -25_200);
|
|
97
|
-
///
|
|
98
|
-
/// Ok(())
|
|
99
|
-
/// }
|
|
100
|
-
/// # Ruby::init(example).unwrap()
|
|
101
|
-
/// ```
|
|
102
|
-
pub fn utc_offset(self) -> i64 {
|
|
103
|
-
unsafe { Fixnum::from_rb_value_unchecked(rb_time_utc_offset(self.as_rb_value())).to_i64() }
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
impl fmt::Display for Time {
|
|
108
|
-
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
|
109
|
-
write!(f, "{}", unsafe { self.to_s_infallible() })
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
impl fmt::Debug for Time {
|
|
114
|
-
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
|
115
|
-
write!(f, "{}", self.inspect())
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
impl IntoValue for Time {
|
|
120
|
-
#[inline]
|
|
121
|
-
fn into_value_with(self, _: &Ruby) -> Value {
|
|
122
|
-
self.0.as_value()
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
impl IntoValue for SystemTime {
|
|
127
|
-
#[inline]
|
|
128
|
-
fn into_value_with(self, ruby: &Ruby) -> Value {
|
|
129
|
-
match self.duration_since(Self::UNIX_EPOCH) {
|
|
130
|
-
Ok(duration) => ruby
|
|
131
|
-
.time_new(
|
|
132
|
-
duration.as_secs().try_into().unwrap(),
|
|
133
|
-
duration.subsec_micros().try_into().unwrap(),
|
|
134
|
-
)
|
|
135
|
-
.unwrap()
|
|
136
|
-
.as_value(),
|
|
137
|
-
Err(_) => {
|
|
138
|
-
let duration = Self::UNIX_EPOCH.duration_since(self).unwrap();
|
|
139
|
-
ruby.time_new(
|
|
140
|
-
-i64::try_from(duration.as_secs()).unwrap(),
|
|
141
|
-
-i64::try_from(duration.subsec_micros()).unwrap(),
|
|
142
|
-
)
|
|
143
|
-
.unwrap()
|
|
144
|
-
.as_value()
|
|
145
|
-
}
|
|
146
|
-
}
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
impl Object for Time {}
|
|
151
|
-
|
|
152
|
-
unsafe impl private::ReprValue for Time {}
|
|
153
|
-
|
|
154
|
-
impl ReprValue for Time {}
|
|
155
|
-
|
|
156
|
-
impl TryConvert for Time {
|
|
157
|
-
fn try_convert(val: Value) -> Result<Self, Error> {
|
|
158
|
-
Self::from_value(val).ok_or_else(|| {
|
|
159
|
-
Error::new(
|
|
160
|
-
Ruby::get_with(val).exception_type_error(),
|
|
161
|
-
format!("no implicit conversion of {} into Time", unsafe {
|
|
162
|
-
val.classname()
|
|
163
|
-
},),
|
|
164
|
-
)
|
|
165
|
-
})
|
|
166
|
-
}
|
|
167
|
-
}
|
|
168
|
-
|
|
169
|
-
impl TryConvert for SystemTime {
|
|
170
|
-
fn try_convert(val: Value) -> Result<Self, Error> {
|
|
171
|
-
let mut timeval = timeval {
|
|
172
|
-
tv_sec: 0,
|
|
173
|
-
tv_usec: 0,
|
|
174
|
-
};
|
|
175
|
-
protect(|| unsafe {
|
|
176
|
-
timeval = rb_time_timeval(val.as_rb_value());
|
|
177
|
-
Ruby::get_unchecked().qnil()
|
|
178
|
-
})?;
|
|
179
|
-
if timeval.tv_sec >= 0 && timeval.tv_usec >= 0 {
|
|
180
|
-
let mut duration = Duration::from_secs(timeval.tv_sec as _);
|
|
181
|
-
duration += Duration::from_micros(timeval.tv_usec as _);
|
|
182
|
-
Ok(Self::UNIX_EPOCH + duration)
|
|
183
|
-
} else {
|
|
184
|
-
Err(Error::new(
|
|
185
|
-
Ruby::get_with(val).exception_arg_error(),
|
|
186
|
-
"time must not be negative",
|
|
187
|
-
))
|
|
188
|
-
}
|
|
189
|
-
}
|
|
190
|
-
}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
use std::collections::HashMap;
|
|
2
|
-
|
|
3
|
-
#[test]
|
|
4
|
-
fn it_converts_hash_map() {
|
|
5
|
-
let ruby = unsafe { magnus::embed::init() };
|
|
6
|
-
|
|
7
|
-
let map: HashMap<String, u8> = ruby
|
|
8
|
-
.eval(r#"{"foo" => 1, "bar" => 2, "baz" => 3}"#)
|
|
9
|
-
.unwrap();
|
|
10
|
-
|
|
11
|
-
let mut expected = HashMap::new();
|
|
12
|
-
expected.insert("foo".to_owned(), 1);
|
|
13
|
-
expected.insert("bar".to_owned(), 2);
|
|
14
|
-
expected.insert("baz".to_owned(), 3);
|
|
15
|
-
assert_eq!(expected, map);
|
|
16
|
-
|
|
17
|
-
let mut map = HashMap::new();
|
|
18
|
-
map.insert("test", (0, 0.5));
|
|
19
|
-
map.insert("example", (1, 3.75));
|
|
20
|
-
magnus::rb_assert!(
|
|
21
|
-
ruby,
|
|
22
|
-
r#"map == {"test" => [0, 0.5], "example" => [1, 3.75]}"#,
|
|
23
|
-
map
|
|
24
|
-
);
|
|
25
|
-
}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
use magnus::{prelude::*, Value};
|
|
2
|
-
|
|
3
|
-
#[test]
|
|
4
|
-
fn it_converts_to_utf8_string() {
|
|
5
|
-
let ruby = unsafe { magnus::embed::init() };
|
|
6
|
-
|
|
7
|
-
let val: Value = ruby
|
|
8
|
-
.eval(r#""caf\xE9".force_encoding("ISO-8859-1")"#)
|
|
9
|
-
.unwrap();
|
|
10
|
-
let s = String::try_convert(val).unwrap();
|
|
11
|
-
|
|
12
|
-
assert_eq!("café", s);
|
|
13
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"files":{".cargo_vcs_info.json":"97b960c9affe8829a1942802b1ba09307703861bbed4a342fdbdd3b27df38714","Cargo.toml":"75b9f2370006d03da0b8430309a759ece2855f768ab9b341a84171e23212800b","Cargo.toml.orig":"7e5ce7d7cc8e2305921a32560089740bf290d7379b812d1179cbb7aba2c2586a","LICENSE":"79e69d34457af5881b9b7410144cac786098fd86f242a98f419aa8abd1b0578a","src/init.rs":"c0204a41d747889cfd6723f4f3bf4aa2f9f868c288738d29cc6229de4260debf","src/lib.rs":"dd1821d8c5d360ce2360923fd21c8c4ae30d8397f5e9bfbb3bd3df6e18ff5c35","src/typed_data.rs":"380fa9c47b0ddc1b519f3d9affed0435a94f79a2788e531e45fedf57a53d23fa","src/util.rs":"725e3015700ace4d7fd4d403300f8145129d1b6f23f0c95c69f89e7298c27160"},"package":"5968c820e2960565f647819f5928a42d6e874551cab9d88d75e3e0660d7f71e3"}
|