diff --git a/src/ident.rs b/src/ident.rs index d0f4ba08db..4abb7dd34e 100644 --- a/src/ident.rs +++ b/src/ident.rs @@ -4,12 +4,11 @@ use crate::lookahead; pub use proc_macro2::Ident; #[cfg(feature = "parsing")] -pub_if_not_doc! { - #[doc(hidden)] - #[allow(non_snake_case)] - pub fn Ident(marker: lookahead::TokenMarker) -> Ident { - match marker {} - } +#[cfg(not(doc))] // Rustdoc bug: does not respect the doc(hidden) +#[doc(hidden)] +#[allow(non_snake_case)] +pub fn Ident(marker: lookahead::TokenMarker) -> Ident { + match marker {} } macro_rules! ident_from_token { diff --git a/src/lifetime.rs b/src/lifetime.rs index 29f4cfdb3b..98f6fa4c50 100644 --- a/src/lifetime.rs +++ b/src/lifetime.rs @@ -113,12 +113,11 @@ impl Hash for Lifetime { } #[cfg(feature = "parsing")] -pub_if_not_doc! { - #[doc(hidden)] - #[allow(non_snake_case)] - pub fn Lifetime(marker: lookahead::TokenMarker) -> Lifetime { - match marker {} - } +#[cfg(not(doc))] // Rustdoc bug: does not respect the doc(hidden) +#[doc(hidden)] +#[allow(non_snake_case)] +pub fn Lifetime(marker: lookahead::TokenMarker) -> Lifetime { + match marker {} } #[cfg(feature = "parsing")] diff --git a/src/lit.rs b/src/lit.rs index f7426ce818..5b6438eafd 100644 --- a/src/lit.rs +++ b/src/lit.rs @@ -758,12 +758,11 @@ macro_rules! lit_extra_traits { } #[cfg(feature = "parsing")] - pub_if_not_doc! { - #[doc(hidden)] - #[allow(non_snake_case)] - pub fn $ty(marker: lookahead::TokenMarker) -> $ty { - match marker {} - } + #[cfg(not(doc))] // Rustdoc bug: does not respect the doc(hidden) + #[doc(hidden)] + #[allow(non_snake_case)] + pub fn $ty(marker: lookahead::TokenMarker) -> $ty { + match marker {} } }; } @@ -776,12 +775,11 @@ lit_extra_traits!(LitInt); lit_extra_traits!(LitFloat); #[cfg(feature = "parsing")] -pub_if_not_doc! { - #[doc(hidden)] - #[allow(non_snake_case)] - pub fn LitBool(marker: lookahead::TokenMarker) -> LitBool { - match marker {} - } +#[cfg(not(doc))] // Rustdoc bug: does not respect the doc(hidden) +#[doc(hidden)] +#[allow(non_snake_case)] +pub fn LitBool(marker: lookahead::TokenMarker) -> LitBool { + match marker {} } ast_enum! { @@ -798,12 +796,11 @@ ast_enum! { } #[cfg(feature = "parsing")] -pub_if_not_doc! { - #[doc(hidden)] - #[allow(non_snake_case)] - pub fn Lit(marker: lookahead::TokenMarker) -> Lit { - match marker {} - } +#[cfg(not(doc))] // Rustdoc bug: does not respect the doc(hidden) +#[doc(hidden)] +#[allow(non_snake_case)] +pub fn Lit(marker: lookahead::TokenMarker) -> Lit { + match marker {} } #[cfg(feature = "parsing")] diff --git a/src/macros.rs b/src/macros.rs index 06ceb542da..953841b6f5 100644 --- a/src/macros.rs +++ b/src/macros.rs @@ -166,20 +166,3 @@ macro_rules! check_keyword_matches { (enum enum) => {}; (pub pub) => {}; } - -// Rustdoc bug: does not respect the doc(hidden) on some items. -#[cfg(all(doc, feature = "parsing"))] -macro_rules! pub_if_not_doc { - ($(#[$m:meta])* pub $($item:tt)*) => { - $(#[$m])* - pub(crate) $($item)* - }; -} - -#[cfg(all(not(doc), feature = "parsing"))] -macro_rules! pub_if_not_doc { - ($(#[$m:meta])* pub $($item:tt)*) => { - $(#[$m])* - pub $($item)* - }; -}