| 1 |
[package] |
| 2 |
name = "quasi-declare" |
| 3 |
version = "0.1.13" |
| 4 |
description = "The declare! form: a screen description compiled to Rust at build time." |
| 5 |
edition.workspace = true |
| 6 |
rust-version.workspace = true |
| 7 |
authors.workspace = true |
| 8 |
repository.workspace = true |
| 9 |
license.workspace = true |
| 10 |
publish = false |
| 11 |
|
| 12 |
[lib] |
| 13 |
proc-macro = true |
| 14 |
|
| 15 |
[dependencies] |
| 16 |
proc-macro2 = "1" |
| 17 |
quote = "1" |
| 18 |
syn = { version = "2", features = ["full", "parsing", "printing", "proc-macro"] } |
| 19 |
# Screen copy leaves Rust as TOML and the macro reads it (quasicoherent |
| 20 |
# `98fbee62`). A build-time dependency of a proc macro, so nothing of it |
| 21 |
# reaches a consumer's binary. |
| 22 |
toml = "1" |
| 23 |
|
| 24 |
[lints] |
| 25 |
workspace = true |
| 26 |
|
| 27 |
[dev-dependencies] |
| 28 |
# The pair rule has to fail at the macro, naming the binding, rather than at |
| 29 |
# rustc naming a `let` the declaration never wrote. Those are two different |
| 30 |
# compile errors and only a compile-fail harness can tell them apart. |
| 31 |
trybuild = "1" |
| 32 |
# The generated code names the vocabulary, so a case that is meant to COMPILE |
| 33 |
# needs it. A proc-macro crate cannot depend on it outside dev. |
| 34 |
quasi-router = { path = "../quasi-router", version = "0.104" } |
| 35 |
|