summaryrefslogtreecommitdiffstats
path: root/tests/rustdoc/cfg_doc_reexport.rs
blob: addb6709db1da8a25fe823eda5029fa7a057e8d5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#![feature(doc_cfg)]
#![feature(no_core)]

#![crate_name = "foo"]
#![no_core]

// @has 'foo/index.html'
// @has - '//*[@class="item-left module-item"]/*[@class="stab portability"]' 'foobar'
// @has - '//*[@class="item-left module-item"]/*[@class="stab portability"]' 'bar'

#[doc(cfg(feature = "foobar"))]
mod imp_priv {
    // @has 'foo/struct.BarPriv.html'
    // @has - '//*[@id="main-content"]/*[@class="item-info"]/*[@class="stab portability"]' \
    //    'Available on crate feature foobar only.'
    pub struct BarPriv {}
    impl BarPriv {
        pub fn test() {}
    }
}
#[doc(cfg(feature = "foobar"))]
pub use crate::imp_priv::*;

pub mod bar {
    // @has 'foo/bar/struct.Bar.html'
    // @has - '//*[@id="main-content"]/*[@class="item-info"]/*[@class="stab portability"]' \
    //    'Available on crate feature bar only.'
    #[doc(cfg(feature = "bar"))]
    pub struct Bar;
}

#[doc(cfg(feature = "bar"))]
pub use bar::Bar;