[package] name = "try-specialize" version = "0.1.1" authors = [ "Andrey Zheleznov " ] edition = "2021" rust-version = "1.81.0" description = "Zero-cost specialization in generic context on stable Rust" documentation = "https://docs.rs/try-specialize" readme = "README.md" repository = "https://github.com/zheland/try-specialize" license = "MIT OR Apache-2.0" keywords = [ "specialization", "specialize", "cast", "no-std", "stable", ] categories = [ "rust-patterns", "no-std", "no-std::no-alloc", ] [features] default = [ "alloc", "std" ] alloc = [] std = [ "alloc" ] # Enables API that depends on Rust library undocumented behavior. unreliable = [] # Internal private feature. # Enables function merging check tests for generated extern test fns. # Requires `profile.opt-level >= 2` if used for tests. __test_extern_fn_merging = [] # Internal private feature. # Enables dead code elimination check tests for generated extern test fns. # Requires `profile.opt-level >= 2` if used for tests. __test_extern_fn_dce = [] # Internal private feature. # Enables tests that require nightly rust toolchain. __test_nightly = [] [dependencies] [dev-dependencies] castaway = "0.2.3" coe-rs = "0.1.2" downcast-rs = "1.2.1" hashbrown = "0.15.0" paste = "1.0.15" rustversion = "1.0.17" specialize = "0.0.3" specialized-dispatch = "0.2.1" syllogism = "0.1.3" syllogism-macro = "0.1.1" version-sync = "0.9.5" [package.metadata.docs.rs] all-features = true rustdoc-args = ["--cfg", "docsrs"] [lints.rust] rust_2018_idioms.level = "warn" rust_2018_idioms.priority = -1 future_incompatible = "warn" keyword_idents = "warn" let_underscore = "warn" meta_variable_misuse = "warn" missing_abi = "warn" missing_copy_implementations = "warn" missing_debug_implementations = "warn" missing_docs = "warn" non_ascii_idents = "warn" refining_impl_trait = "warn" single_use_lifetimes = "warn" trivial_casts = "warn" trivial_numeric_casts = "warn" unused_crate_dependencies = "warn" unused_extern_crates = "warn" unused_import_braces = "warn" unused_lifetimes = "warn" unused_qualifications = "warn" unused_results = "warn" variant_size_differences = "warn" [lints.clippy] all.level = "warn" all.priority = -1 pedantic.level = "warn" pedantic.priority = -1 alloc_instead_of_core = "warn" allow_attributes = "warn" allow_attributes_without_reason = "warn" arithmetic_side_effects = "warn" as_conversions = "warn" branches_sharing_code = "warn" clone_on_ref_ptr = "warn" dbg_macro = "warn" debug_assert_with_mut_call = "warn" decimal_literal_representation = "warn" default_trait_access = "warn" empty_line_after_outer_attr = "warn" empty_structs_with_brackets = "warn" error_impl_error = "warn" exit = "warn" fallible_impl_from = "warn" filetype_is_file = "warn" float_cmp_const = "warn" future_not_send = "warn" get_unwrap = "warn" if_then_some_else_none = "warn" missing_const_for_fn = "warn" missing_inline_in_public_items = "warn" modulo_arithmetic = "warn" multiple_inherent_impl = "warn" mut_mut = "warn" nonstandard_macro_braces = "warn" option_if_let_else = "warn" panic = "warn" print_stderr = "warn" rc_buffer = "warn" redundant_pub_crate = "warn" std_instead_of_core = "warn" string_lit_as_bytes = "warn" suboptimal_flops = "warn" suspicious_operation_groupings = "warn" todo = "warn" trivial_regex = "warn" try_err = "warn" undocumented_unsafe_blocks = "warn" unimplemented = "warn" unwrap_used = "warn" use_self = "warn" useless_let_if_seq = "warn" verbose_file_reads = "warn" wildcard_enum_match_arm = "warn" module_name_repetitions = "allow" # Items are re-exported to the crate root.