[package]
name = "rlibphonenumber"
version = "2.2.6"
edition = "2024"
rust-version = "1.88"
authors = ["Vladislav K. https://t.me/vloldik"]
description = "A high-performance Rust port of Google's libphonenumber for parsing, formatting, and validating international phone numbers."
repository = "https://github.com/vloldik/rlibphonenumber"
documentation = "https://docs.rs/rlibphonenumber"
readme.workspace = true
license = "Apache-2.0"
keywords = [
"phone",
"phonenumber",
"libphonenumber",
"validation",
"formatting",
]
categories = [
"parser-implementations",
"text-processing",
"internationalization",
]
build = "build/rust_build.rs"
[features]
default = ["builtin_metadata", "global_static", "regex", "protox"]
builtin_metadata = []
global_static = ["builtin_metadata"]
protox = ["dep:protox"]
regex = ["dep:regex"]
lite = ["dep:regex-lite"]
digest_mac = ["digest", "digest?/mac"]
digest = ["dep:digest"]
serde = ["global_static", "dep:serde"]
[lib]
name = "rlibphonenumber"
path = "src/lib.rs"
[dependencies]
prost = { workspace = true }
log = "0.4"
dashmap = "5.5"
regex = { version = "1.10", optional = true }
regex-lite = { version = "0.1", optional = true }
thiserror = { workspace = true }
itoa = "1.0"
fast-cat = "0.1"
strum = { version = "0.26", features = ["derive"] }
rlibphonenumber_macro = { path = "../rlibphonenumber_macro", version = "0.2" }
zeroes_itoa = { path = "../zeroes_itoa", version = "0.1" }
serde = { workspace = true, optional = true }
rustc-hash = { version = "2.1" }
digest = { version = "0.11", optional = true }
[build-dependencies]
thiserror = "1.0"
prost-build = "0.14"
protox = { version = "0.9", optional = true }
uniprops-gen = "0.3.5"
[dev-dependencies]
colog = "1.3"
env_logger = "0.11"
criterion = "0.5"
phonenumber = "0.3"
phonelib = "1.1.3"
serde_json = "1.0"
[[bench]]
name = "format_bench"
harness = false
[[bench]]
name = "parsing_bench"
harness = false
[[bench]]
name = "create_bench"
harness = false
[[bench]]
name = "matcher_bench"
harness = false