Expand description
Dependency-free utilities shared across the truce workspace.
cast— numeric-cast helpers for the audio-plugin → host FFI boundary (usize↔u32length casts, hostf64↔ DSPf32, discrete-index ↔ normalized).midi— MIDI value-domain normalize / denormalize between wire-native integers andf32ranges, plus the spec’s MIDI 1.0 ↔ MIDI 2.0 bit-replication bridges.shell_sidecar— sidecar-file path resolution shared bycargo-truce(writes the sidecar at install-time) and thetruce::plugin!macro (reads it at runtime to locate the logic dylib for hot-reload).slugify— ASCII-safe filesystem / IRI slug used by the LV2 staging path and runtime bundle-name derivation.
truce-core re-exports the modules above so consumers that pull
truce-core don’t need a second dependency. Crates that want to
avoid truce-core’s truce-params chain (notably cargo-truce)
depend on truce-utils directly.
Modules§
- cast
- Numeric-cast helpers for the audio-plugin → host FFI boundary.
- midi
- MIDI value-domain helpers: normalize / denormalize between
wire-native integers and
f32ranges. - shell_
sidecar - Sidecar file that pins the
--shelllogic dylib path at install time.
Functions§
- slugify
- Slug a plugin’s display name into a lowercase, hyphenated, ASCII-safe identifier suitable for filesystem paths, LV2 bundle names, and IRI components.