[package]
name = "gen-platform"
description = "gen-platform — Rust-first canonical handle for the typed-dispatcher (typed-tagged-union catamorphism) substrate primitive. Re-exports TypedDispatcher + #[derive(TypedDispatcher)], ships a runtime Dispatcher<T> applicator for Rust consumers (controllers, daemons, reactive routers), and surfaces the typed catalog reflection so any pleme-io crate can stand up a typed dispatch surface against any closed variant universe. The 'common language' substrate primitive — see theory/QUIRK-APPLIER.md."
version.workspace = true
edition.workspace = true
rust-version.workspace = true
license.workspace = true
homepage.workspace = true
repository.workspace = true
authors.workspace = true
[lib]
name = "gen_platform"
path = "src/lib.rs"
[lints]
workspace = true
[dependencies]
gen-types = { workspace = true }
gen-macros = { version = "0.1.0", path = "../gen-macros" }
serde = { workspace = true }
serde_json = { workspace = true }
thiserror = { workspace = true }
inventory = { workspace = true }
[dev-dependencies]
# Explicit versionless path (NOT `workspace = true`): the workspace gen-cargo
# entry carries a version, and a versioned dev-dep is NOT stripped at the
# registry-upload step — which would make gen-platform wait for gen-cargo,
# gen-cargo wait for shigoto, and shigoto wait for gen-platform (a publish
# cycle). Versionless path deps are dropped on upload, breaking the cycle.
gen-cargo = { path = "../gen-cargo" }
gen-npm = { path = "../gen-npm" }