#![crate_name = "foo"] #![feature(doc_cfg)] pub mod tag { #[deprecated(since = "0.1.8", note = "Use bar() instead")] pub trait Deprecated {} #[doc(cfg(feature = "sync"))] pub trait Portability {} #[deprecated(since = "0.1.8", note = "Use bar() instead")] #[doc(cfg(feature = "sync"))] pub trait Both {} pub trait None {} } // @has foo/mod1/index.html pub mod mod1 { // @has - '//code' 'pub use tag::Deprecated;' // @has - '//span' 'Deprecated' // @!has - '//span' 'sync' pub use tag::Deprecated; } // @has foo/mod2/index.html pub mod mod2 { // @has - '//code' 'pub use tag::Portability;' // @!has - '//span' 'Deprecated' // @has - '//span' 'sync' pub use tag::Portability; } // @has foo/mod3/index.html pub mod mod3 { // @has - '//code' 'pub use tag::Both;' // @has - '//span' 'Deprecated' // @has - '//span' 'sync' pub use tag::Both; } // @has foo/mod4/index.html pub mod mod4 { // @has - '//code' 'pub use tag::None;' // @!has - '//span' 'Deprecated' // @!has - '//span' 'sync' pub use tag::None; }