[package] name = "proc-macro2" version = "1.0.22" # remember to update html_root_url authors = ["Alex Crichton ", "David Tolnay "] license = "MIT OR Apache-2.0" readme = "README.md" keywords = ["macros"] repository = "https://github.com/alexcrichton/proc-macro2" documentation = "https://docs.rs/proc-macro2" categories = ["development-tools::procedural-macro-helpers"] edition = "2018" description = """ A substitute implementation of the compiler's `proc_macro` API to decouple token-based libraries from the procedural macro use case. """ [package.metadata.docs.rs] rustc-args = ["--cfg", "procmacro2_semver_exempt"] rustdoc-args = ["--cfg", "procmacro2_semver_exempt"] targets = ["x86_64-unknown-linux-gnu"] [package.metadata.playground] features = ["span-locations"] [dependencies] unicode-xid = "0.2" [dev-dependencies] quote = { version = "1.0", default_features = false } [features] proc-macro = [] default = ["proc-macro"] # Expose methods Span::start and Span::end which give the line/column location # of a token. span-locations = [] # This feature no longer means anything. nightly = [] [workspace] members = ["benches/bench-libproc-macro", "tests/ui"] [patch.crates-io] # Our doc tests depend on quote which depends on proc-macro2. Without this line, # the proc-macro2 dependency of quote would be the released version of # proc-macro2. Quote would implement its traits for types from that proc-macro2, # meaning impls would be missing when tested against types from the local # proc-macro2. # # GitHub Actions builds that are in progress at the time that you publish may # spuriously fail. This is because they'll be building a local proc-macro2 which # carries the second-most-recent version number, pulling in quote which resolves # to a dependency on the just-published most recent version number. Thus the # patch will fail to apply because the version numbers are different. proc-macro2 = { path = "." }