[workspace]
members = [".", "crates/tspc"]
resolver = "3"
[workspace.metadata.dist]
cargo-dist-version = "0.31.0"
allow-dirty = ["ci"]
ci = "github"
installers = []
targets = ["aarch64-apple-darwin", "aarch64-unknown-linux-gnu", "aarch64-unknown-linux-musl", "aarch64-pc-windows-msvc", "armv7-unknown-linux-gnueabihf", "armv7-unknown-linux-musleabihf", "x86_64-apple-darwin", "x86_64-unknown-linux-gnu", "x86_64-unknown-linux-musl", "x86_64-pc-windows-msvc"]
pr-run-mode = "plan"
install-updater = false
macos-sign = false
extra-artifacts = []
unix-archive = ".tar.gz"
windows-archive = ".zip"
merge-targets = false
only-binary = true
install-path = "CARGO_HOME"
[package]
name = "typespec_rs"
version = "0.5.0"
edition = "2024"
rust-version = "1.95"
description = "A Rust implementation of the TypeSpec type system — parser, checker, and emitter"
repository = "https://github.com/ejfkdev/typespec-rs"
homepage = "https://github.com/ejfkdev/typespec-rs"
documentation = "https://docs.rs/typespec_rs"
license = "MIT"
readme = "README.md"
keywords = ["typespec", "parser", "type-checker", "compiler", "api"]
categories = ["parser-implementations", "development-tools", "compilers"]
exclude = [".github/", ".claude/"]
[dependencies]
regex = "1"
bitflags = "2"
[profile.release]
opt-level = "z"
lto = true
codegen-units = 1
panic = "abort"
strip = true
[profile.dist]
inherits = "release"
lto = "thin"
[[example]]
name = "quick_start"
[[example]]
name = "model_examples"
[[example]]
name = "parse_and_inspect"
[[example]]
name = "petstore"
[[example]]
name = "tsp_to_json"
path = "examples/tsp_to_json/parse_and_emit.rs"