1[package] 2name = "proc-macro2" 3version = "1.0.92" 4authors = ["David Tolnay <dtolnay@gmail.com>", "Alex Crichton <alex@alexcrichton.com>"] 5autobenches = false 6categories = ["development-tools::procedural-macro-helpers"] 7description = "A substitute implementation of the compiler's `proc_macro` API to decouple token-based libraries from the procedural macro use case." 8documentation = "https://docs.rs/proc-macro2" 9edition = "2021" 10keywords = ["macros", "syn"] 11license = "MIT OR Apache-2.0" 12repository = "https://github.com/dtolnay/proc-macro2" 13rust-version = "1.56" 14 15[package.metadata.docs.rs] 16rustc-args = ["--cfg", "procmacro2_semver_exempt"] 17rustdoc-args = ["--cfg", "procmacro2_semver_exempt", "--generate-link-to-definition"] 18targets = ["x86_64-unknown-linux-gnu"] 19 20[package.metadata.playground] 21features = ["span-locations"] 22 23[dependencies] 24unicode-ident = "1.0" 25 26[dev-dependencies] 27flate2 = "1.0" 28quote = { version = "1.0", default-features = false } 29rayon = "1.0" 30rustversion = "1" 31tar = "0.4" 32 33[features] 34proc-macro = [] 35default = ["proc-macro"] 36 37# Expose methods Span::start and Span::end which give the line/column location 38# of a token. 39span-locations = [] 40 41# This feature no longer means anything. 42nightly = [] 43 44[lib] 45doc-scrape-examples = false 46 47[workspace] 48members = ["benches/bench-libproc-macro", "tests/ui"] 49 50[patch.crates-io] 51# Our doc tests depend on quote which depends on proc-macro2. Without this line, 52# the proc-macro2 dependency of quote would be the released version of 53# proc-macro2. Quote would implement its traits for types from that proc-macro2, 54# meaning impls would be missing when tested against types from the local 55# proc-macro2. 56# 57# GitHub Actions builds that are in progress at the time that you publish may 58# spuriously fail. This is because they'll be building a local proc-macro2 which 59# carries the second-most-recent version number, pulling in quote which resolves 60# to a dependency on the just-published most recent version number. Thus the 61# patch will fail to apply because the version numbers are different. 62proc-macro2 = { path = "." } 63