#[cfg(doc)]
use quote::quote;
pub use quote::{format_ident, IdentFragment, ToTokens, TokenStreamExt};
#[doc(hidden)]
pub mod __private {
pub use quote;
pub use quote_use_macros::quote_use_impl;
#[cfg(feature = "syn")]
pub use syn;
}
#[macro_export]
macro_rules! quote_use {
($($tokens:tt)*) => {
$crate::__private::quote_use_impl!{($crate::__private::quote::quote) () ($($tokens)*)}
};
}
#[macro_export]
macro_rules! quote_spanned_use {
($span:expr => $($tokens:tt)*) => {
$crate::__private::quote_use_impl!{($crate::__private::quote::quote_spanned) ($span =>) ($($tokens)*)}
};
}
#[cfg(feature = "syn")]
#[macro_export]
macro_rules! parse_quote_use {
($($tokens:tt)*) => {
$crate::__private::quote_use_impl!{($crate::__private::syn::parse_quote) () ($($tokens)*)}
};
}
#[cfg(feature = "syn")]
#[macro_export]
macro_rules! parse_quote_spanned_use {
($span:expr => $($tokens:tt)*) => {
$crate::__private::quote_use_impl!{($crate::__private::syn::parse_quote_spanned) ($span =>) ($($tokens)*)}
};
}
#[macro_export]
macro_rules! quote_use_no_prelude {
($($tokens:tt)*) => {
$crate::__private::quote_use_impl!{($crate::__private::quote::quote) () (#use no_prelude; $($tokens)*)}
};
}
#[macro_export]
macro_rules! quote_spanned_use_no_prelude {
($span:expr => $($tokens:tt)*) => {
$crate::__private::quote_use_impl!{($crate::__private::quote::quote_spanned) ($span =>) (#use no_prelude; $($tokens)*)}
};
}
#[cfg(feature = "syn")]
#[macro_export]
macro_rules! parse_quote_use_no_prelude {
($($tokens:tt)*) => {
$crate::__private::quote_use_impl!{($crate::__private::syn::parse_quote) () (#use no_prelude; $($tokens)*)}
};
}
#[cfg(feature = "syn")]
#[macro_export]
macro_rules! parse_quote_spanned_use_no_prelude {
($span:expr => $($tokens:tt)*) => {
$crate::__private::quote_use_impl!{($crate::__private::syn::parse_quote_spanned) ($span =>) (#use no_prelude; $($tokens)*)}
};
}