aboutsummaryrefslogtreecommitdiff
path: root/vendor/quote/src/ident_fragment.rs
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/quote/src/ident_fragment.rs')
-rw-r--r--vendor/quote/src/ident_fragment.rs88
1 files changed, 0 insertions, 88 deletions
diff --git a/vendor/quote/src/ident_fragment.rs b/vendor/quote/src/ident_fragment.rs
deleted file mode 100644
index 6c2a9a8..0000000
--- a/vendor/quote/src/ident_fragment.rs
+++ /dev/null
@@ -1,88 +0,0 @@
-use alloc::borrow::Cow;
-use core::fmt;
-use proc_macro2::{Ident, Span};
-
-/// Specialized formatting trait used by `format_ident!`.
-///
-/// [`Ident`] arguments formatted using this trait will have their `r#` prefix
-/// stripped, if present.
-///
-/// See [`format_ident!`] for more information.
-///
-/// [`format_ident!`]: crate::format_ident
-pub trait IdentFragment {
- /// Format this value as an identifier fragment.
- fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result;
-
- /// Span associated with this `IdentFragment`.
- ///
- /// If non-`None`, may be inherited by formatted identifiers.
- fn span(&self) -> Option<Span> {
- None
- }
-}
-
-impl<T: IdentFragment + ?Sized> IdentFragment for &T {
- fn span(&self) -> Option<Span> {
- <T as IdentFragment>::span(*self)
- }
-
- fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
- IdentFragment::fmt(*self, f)
- }
-}
-
-impl<T: IdentFragment + ?Sized> IdentFragment for &mut T {
- fn span(&self) -> Option<Span> {
- <T as IdentFragment>::span(*self)
- }
-
- fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
- IdentFragment::fmt(*self, f)
- }
-}
-
-impl IdentFragment for Ident {
- fn span(&self) -> Option<Span> {
- Some(self.span())
- }
-
- fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
- let id = self.to_string();
- if let Some(id) = id.strip_prefix("r#") {
- fmt::Display::fmt(id, f)
- } else {
- fmt::Display::fmt(&id[..], f)
- }
- }
-}
-
-impl<T> IdentFragment for Cow<'_, T>
-where
- T: IdentFragment + ToOwned + ?Sized,
-{
- fn span(&self) -> Option<Span> {
- T::span(self)
- }
-
- fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
- T::fmt(self, f)
- }
-}
-
-// Limited set of types which this is implemented for, as we want to avoid types
-// which will often include non-identifier characters in their `Display` impl.
-macro_rules! ident_fragment_display {
- ($($T:ty),*) => {
- $(
- impl IdentFragment for $T {
- fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
- fmt::Display::fmt(self, f)
- }
- }
- )*
- };
-}
-
-ident_fragment_display!(bool, str, String, char);
-ident_fragment_display!(u8, u16, u32, u64, u128, usize);