proc-macro2 1.0.50

A substitute implementation of the compiler's `proc_macro` API to decouple token-based libraries from the procedural macro use case.
Documentation
[package]
name = "proc-macro2"
version = "1.0.50" # remember to update html_root_url
authors = ["David Tolnay <dtolnay@gmail.com>", "Alex Crichton <alex@alexcrichton.com>"]
autobenches = false
categories = ["development-tools::procedural-macro-helpers"]
description = "A substitute implementation of the compiler's `proc_macro` API to decouple token-based libraries from the procedural macro use case."
documentation = "https://docs.rs/proc-macro2"
edition = "2018"
keywords = ["macros", "syn"]
license = "MIT OR Apache-2.0"
repository = "https://github.com/dtolnay/proc-macro2"
rust-version = "1.31"

[package.metadata.docs.rs]
rustc-args = ["--cfg", "procmacro2_semver_exempt"]
rustdoc-args = ["--cfg", "procmacro2_semver_exempt", "--cfg", "doc_cfg"]
targets = ["x86_64-unknown-linux-gnu"]

[package.metadata.playground]
features = ["span-locations"]

[dependencies]
unicode-ident = "1.0"

[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 = []

[lib]
doc-scrape-examples = false

[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 = "." }