[package]
edition = "2024"
rust-version = "1.85.0"
name = "varing"
version = "0.14.0"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Protobuf's varint encoding/decoding for LEB128 friendly types with full const context operations supports."
homepage = "https://github.com/al8n/varing"
documentation = "https://docs.rs/varing"
readme = "README.md"
keywords = [
"leb128",
"varint",
"protobuf",
"proto",
"const",
]
categories = [
"no-std",
"no-std::no-alloc",
"encoding",
"data-structures",
"network-programming",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/al8n/varing"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
"--cfg",
"docsrs",
]
[features]
alloc = []
arbitrary-int = ["arbitrary-int_2"]
arbitrary-int_1 = ["dep:arbitrary-int_1"]
arbitrary-int_2 = ["dep:arbitrary-int_2"]
bnum = ["bnum_0_13"]
bnum_0_13 = ["dep:bnum_0_13"]
chrono = ["chrono_0_4"]
chrono-tz = ["chrono-tz_0_10"]
chrono-tz_0_10 = ["dep:chrono-tz_0_10"]
chrono_0_4 = ["dep:chrono_0_4"]
default = ["std"]
ethereum-types = ["ethereum-types_0_16"]
ethereum-types_0_15 = [
"dep:ethereum-types_0_15",
"bnum",
]
ethereum-types_0_16 = [
"dep:ethereum-types_0_16",
"bnum",
]
float8 = ["float8_0_4"]
float8_0_4 = ["dep:float8_0_4"]
half = ["half_2"]
half_2 = ["dep:half_2"]
num-complex = ["num-complex_0_4"]
num-complex_0_4 = ["dep:num-complex_0_4"]
num-rational = ["num-rational_0_4"]
num-rational_0_4 = ["dep:num-rational_0_4"]
num-traits = ["ruint_1?/num-traits"]
primitive-types = ["primitive-types_0_14"]
primitive-types_0_13 = [
"dep:primitive-types_0_13",
"bnum",
]
primitive-types_0_14 = [
"dep:primitive-types_0_14",
"bnum",
]
ruint = ["ruint_1"]
ruint_1 = ["dep:ruint_1"]
std = ["thiserror/default"]
time = ["time_0_3"]
time_0_3 = ["dep:time_0_3"]
[lib]
name = "varing"
path = "src/lib.rs"
[[bench]]
name = "varint"
path = "benches/varint.rs"
harness = false
[dependencies.arbitrary-int_1]
version = "1"
optional = true
default-features = false
package = "arbitrary-int"
[dependencies.arbitrary-int_2]
version = "2"
optional = true
default-features = false
package = "arbitrary-int"
[dependencies.bnum_0_13]
version = "0.13"
optional = true
default-features = false
package = "bnum"
[dependencies.chrono-tz_0_10]
version = "0.10"
optional = true
default-features = false
package = "chrono-tz"
[dependencies.chrono_0_4]
version = "0.4"
optional = true
default-features = false
package = "chrono"
[dependencies.ethereum-types_0_15]
version = "0.15"
optional = true
default-features = false
package = "ethereum-types"
[dependencies.ethereum-types_0_16]
version = "0.16"
optional = true
default-features = false
package = "ethereum-types"
[dependencies.float8_0_4]
version = "0.4"
optional = true
default-features = false
package = "float8"
[dependencies.half_2]
version = "2"
optional = true
default-features = false
package = "half"
[dependencies.num-complex_0_4]
version = "0.4"
optional = true
default-features = false
package = "num-complex"
[dependencies.num-rational_0_4]
version = "0.4"
optional = true
default-features = false
package = "num-rational"
[dependencies.paste]
version = "1"
[dependencies.primitive-types_0_13]
version = "0.13"
optional = true
default-features = false
package = "primitive-types"
[dependencies.primitive-types_0_14]
version = "0.14"
optional = true
default-features = false
package = "primitive-types"
[dependencies.ruint_1]
version = "1"
optional = true
default-features = false
package = "ruint"
[dependencies.seq-macro]
version = "0.3"
[dependencies.thiserror]
version = "2"
default-features = false
[dependencies.time_0_3]
version = "0.3"
optional = true
default-features = false
package = "time"
[dev-dependencies.bnum_0_13]
version = "0.13"
features = ["quickcheck"]
package = "bnum"
[dev-dependencies.bytes]
version = "1"
[dev-dependencies.chrono-tz_0_10]
version = "0.10"
default-features = false
package = "chrono-tz"
[dev-dependencies.chrono_0_4]
version = "0.4"
default-features = false
package = "chrono"
[dev-dependencies.criterion]
version = "0.8"
features = ["html_reports"]
[dev-dependencies.ethereum-types_0_15]
version = "0.15"
package = "ethereum-types"
[dev-dependencies.ethereum-types_0_16]
version = "0.16"
package = "ethereum-types"
[dev-dependencies.integer-encoding]
version = "4"
[dev-dependencies.leb128]
version = "0.2"
[dev-dependencies.primitive-types_0_13]
version = "0.13"
package = "primitive-types"
[dev-dependencies.primitive-types_0_14]
version = "0.14"
package = "primitive-types"
[dev-dependencies.prost]
version = "0.14"
[dev-dependencies.quickcheck]
version = "1"
[dev-dependencies.quickcheck_macros]
version = "1"
[dev-dependencies.ruint_1]
version = "1"
features = [
"arbitrary",
"quickcheck",
]
package = "ruint"
[dev-dependencies.time_0_3]
version = "0.3"
features = ["quickcheck"]
default-features = false
package = "time"
[dev-dependencies.unsigned-varint]
version = "0.8"
[lints.rust]
rust_2018_idioms = "warn"
single_use_lifetimes = "warn"
[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = ["cfg(all_tests)"]
[profile.bench]
opt-level = 3
lto = "thin"
codegen-units = 1
debug = 0
debug-assertions = false
rpath = false
overflow-checks = false
incremental = false