token-value-map 0.1.2

A token-value map with interpolation of values: what you need for DCCs
Documentation
[package]
name = "token-value-map"
version = "0.1.2"
authors = ["Moritz Moeller <virtualritz@gmail.com>"]
edition = "2024"
keywords = [
    "graphics",
    "animation",
    "attribute",
    "keyframe",
    "dcc",
]
categories = ["graphics"]
license = "Apache-2.0 OR BSD-3-Clause OR MIT OR Zlib"
description = "A token-value map with interpolation of values: what you need for DCCs"
exclude = [".github/**/*"]
readme = "README.md"
documentation = "https://docs.rs/token-value-map"
repository = "https://github.com/virtualritz/token-value-map/"

[features]
default = ["2d", "vec_variants"]
lua = ["dep:mlua"]
serde = ["dep:serde", "ustr/serde"]
interpolation = ["dep:uniform-cubic-splines"]
dopamine-compat = ["interpolation"]

# Individual type features
vector2 = []
vector3 = []
matrix3 = []
normal3 = []
point3 = []
matrix4 = []
vec_variants = []

# Global feature flags
2d = ["vector2", "matrix3"]
3d = ["vector3", "matrix4", "normal3", "point3"]

[dependencies]
anyhow = "1"
bytemuck = "1"
derive_more = { version = "2", features = ["as_ref"] }
enum_dispatch = "0.3"
frame-tick = { version = "0.1", features = ["float_frame_rate", "serde", "std"] }
function_name = "0.3"
log = "0.4"
mlua = { version = "0.11", features = ["anyhow", "lua53"], optional = true }
nalgebra = { version = "0.34", features = ["bytemuck", "serde-serialize"] }
rayon = "1"
serde = { version = "1", features = ["derive"], optional = true }
smallvec = { version = "1", features = ["const_generics", "const_new"] }
strum = { version = "0.27", features = ["derive"] }
uniform-cubic-splines = { version = "0.5", optional = true }
ustr = "1"