[package]
build = "build.rs"
description = "this crate provides various random distribution and initialization routines for the concision framework"
name = "concision-init"
authors.workspace = true
categories.workspace = true
edition.workspace = true
homepage.workspace = true
keywords.workspace = true
license.workspace = true
readme.workspace = true
repository.workspace = true
rust-version.workspace = true
version.workspace = true
[package.metadata.docs.rs]
all-features = false
features = ["default"]
rustc-args = ["--cfg", "docsrs"]
[package.metadata.release]
no-dev-version = true
tag-name = "v{{version}}"
[lib]
bench = false
[dependencies]
hashbrown = { optional = true, workspace = true }
ndarray = { workspace = true }
serde = { features = ["derive"], optional = true, workspace = true }
serde_derive = { optional = true, workspace = true }
anyhow = { workspace = true }
thiserror = { workspace = true }
paste = { workspace = true }
smart-default = { workspace = true }
strum = { workspace = true }
approx = { optional = true, workspace = true }
num-complex = { optional = true, workspace = true }
num-traits = { workspace = true }
getrandom = { workspace = true }
rand = { features = ["os_rng", "small_rng"], workspace = true }
rand_distr = { workspace = true }
wasm-bindgen = { optional = true, workspace = true }
[dev-dependencies]
lazy_static = { workspace = true }
[features]
default = ["std"]
full = [
"default",
"approx",
"complex",
"hashbrown",
"serde",
]
nightly = [
"hashbrown?/nightly",
"rand/nightly",
]
std = [
"alloc",
"anyhow/std",
"getrandom/std",
"hashbrown?/default",
"ndarray/std",
"num-complex?/std",
"num-traits/std",
"rand/std",
"rand/std_rng",
"rand/thread_rng",
"rand_distr/std",
"serde?/std",
"strum/std",
"thiserror/std",
]
wasi = []
wasm = [
"wasm_bindgen",
"getrandom/wasm_js"
]
alloc = [
"hashbrown?/alloc",
"rand/alloc",
"rand_distr/alloc",
"serde?/alloc",
]
approx = [
"dep:approx",
"ndarray/approx",
]
blas = ["ndarray/blas"]
complex = [
"dep:num-complex",
"num-complex?/rand",
]
hashbrown = ["dep:hashbrown"]
rayon = [
"hashbrown?/rayon",
"ndarray/rayon",
]
serde = [
"dep:serde",
"dep:serde_derive",
"serde?/derive",
"hashbrown?/serde",
"ndarray/serde",
"num-complex?/serde",
"rand/serde",
"rand_distr/serde",
]
wasm_bindgen = ["dep:wasm-bindgen"]