[package]
edition = "2024"
rust-version = "1.89.0"
name = "fashex"
version = "0.0.7"
authors = ["Hantong Chen <cxwdyx620@gmail.com>"]
build = false
exclude = [
"assets",
"benches",
"coverage",
"fuzz",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Hexadecimal string encoding and decoding with best-effort SIMD acceleration."
readme = "README.md"
keywords = [
"hex",
"fmt",
]
categories = [
"no-std",
"encoding",
"value-formatting",
]
license = "MIT OR Apache-2.0"
repository = "https://codeberg.org/Hanyu/fashex"
[package.metadata.docs.rs]
features = [
"alloc",
"std",
"nightly",
"portable-simd",
"experimental-loongarch64-simd",
]
additional-targets = [
"loongarch64-unknown-linux-gnu",
"wasm32-unknown-unknown",
]
[features]
__internal_cargo_asm = [
"alloc",
"std",
"nightly",
"portable-simd",
"experimental-loongarch64-simd",
]
__internal_fuzz = [
"alloc",
"std",
"nightly",
"portable-simd",
"experimental-loongarch64-simd",
]
alloc = []
default = ["runtime-cpu-detection"]
experimental-loongarch64-simd = ["nightly"]
nightly = []
portable-simd = ["nightly"]
runtime-cpu-detection = ["dep:cpufeatures"]
std = ["alloc"]
[lib]
name = "fashex"
path = "src/lib.rs"
[dependencies.wrapper-lite]
version = "0.5.1"
[dev-dependencies]
[target.'cfg(any(target_arch = "x86", target_arch = "x86_64", target_arch = "aarch64", target_arch = "loongarch64"))'.dependencies.cpufeatures]
version = "0.3.0"
optional = true
[target.'cfg(any(target_arch = "x86", target_arch = "x86_64", target_arch = "aarch64", target_arch = "loongarch64"))'.dev-dependencies.const-hex]
version = "=1.18.1"
[target.'cfg(any(target_arch = "x86", target_arch = "x86_64", target_arch = "aarch64", target_arch = "loongarch64"))'.dev-dependencies.criterion]
version = "0.8.2"
features = ["html_reports"]
[target.'cfg(any(target_arch = "x86", target_arch = "x86_64", target_arch = "aarch64", target_arch = "loongarch64"))'.dev-dependencies.fastant]
version = "0.1.11"
[target.'cfg(any(target_arch = "x86", target_arch = "x86_64", target_arch = "aarch64", target_arch = "loongarch64"))'.dev-dependencies.faster-hex]
version = "=0.10.0"
features = [
"alloc",
"std",
]
default-features = false
[target.'cfg(any(target_arch = "x86", target_arch = "x86_64", target_arch = "aarch64", target_arch = "loongarch64"))'.dev-dependencies.fastrand]
version = "2.3"
[target.'cfg(any(target_arch = "x86", target_arch = "x86_64", target_arch = "aarch64", target_arch = "loongarch64"))'.dev-dependencies.hex-simd]
version = "=0.8.0"
[lints.clippy]
allow_attributes_without_reason = "warn"
assertions_on_result_states = "warn"
cognitive_complexity = "warn"
create_dir = "warn"
dbg_macro = "warn"
disallowed_script_idents = "deny"
else_if_without_else = "deny"
exhaustive_enums = "warn"
exhaustive_structs = "warn"
filetype_is_file = "warn"
mem_forget = "warn"
missing_errors_doc = "allow"
mod_module_files = "deny"
module_name_repetitions = "allow"
multiple_inherent_impl = "warn"
must_use_candidate = "allow"
mutex_atomic = "warn"
mutex_integer = "warn"
panic = "warn"
redundant_pub_crate = "allow"
string_slice = "warn"
todo = "warn"
unimplemented = "warn"
unreachable = "warn"
wildcard_dependencies = "deny"
[lints.clippy.nursery]
level = "warn"
priority = -1
[lints.clippy.pedantic]
level = "warn"
priority = -1
[lints.rust]
missing_debug_implementations = "warn"
missing_docs = "warn"
unexpected_cfgs = "allow"
unknown_lints = "allow"
unreachable_pub = "warn"
unsafe_code = "warn"
[profile.dev]
debug = "line-tables-only"
[profile.release]
opt-level = 3
lto = true
codegen-units = 1
panic = "abort"
incremental = false
strip = true