scsys-state 0.3.2

generic state implementations and utilities for the scsys ecosystem
[package]

build = "build.rs"

description = "generic state implementations and utilities for the scsys ecosystem"

name = "scsys-state"



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 = ["full"]

rustc-args = [ "--cfg", "docsrs" ]

version = "v{{version}}"



[package.metadata.release]

no-dev-version = true

tag-name = "{{version}}"



[lib]

crate-type = ["cdylib", "rlib","staticlib"]

bench = false

doc = true

doctest = true

test = true



[[test]]

name = "default"



[[test]]

name = "state"

required-features = []



[dependencies]

# custom

contained = { workspace = true }

# error-handling

thiserror = { workspace = true }

# mathematics

num-traits = { workspace = true }

# randomization

getrandom = { optional = true, workspace = true }

rand = { optional = true, workspace = true }

rand_distr = { optional = true, workspace = true }

# serialization

serde = { optional = true, workspace = true }

serde_derive = { optional = true, workspace = true }

serde_json = { optional = true, workspace = true }

# macros & utilities

paste = { workspace = true }

smart-default = { workspace = true }

strum = { workspace = true }

# wasm

wasm-bindgen = { optional = true, workspace = true }



[features]

default = [ 

  "std",

]



full = [

  "default",

  "json",

  "rand",

  "serde",

]



nightly = [

  "rand?/nightly",

]



# ************* [FF:Features] *************



json = [

  "alloc",

  "serde",

  "serde_json",

]



# ************* [FF:Environments] *************



std = [

  "alloc",

  "contained/std",

  "num-traits/std",

  "getrandom?/std",

  "rand?/std",

  "rand_distr?/std",

  "serde?/std",

  "strum/std",

  "thiserror/std",

]



wasi = [

  "alloc"

]



wasm = [

  "alloc",

  "getrandom?/wasm_js",

  "wasm-bindgen",

]



# ************* [FF:Dependencies] *************

alloc = [

  "contained/alloc",

  "serde?/alloc",

  "serde_json?/alloc",

]



rand = [

  "dep:rand",

  "dep:rand_distr",

  "rng",

]



rng = [

  "dep:getrandom",

]



serde = [

  "dep:serde",

  "dep:serde_derive",

  "rand?/serde",

  "rand_distr?/serde",

]



serde_json = ["dep:serde_json"]



wasm-bindgen = ["dep:wasm-bindgen"]