summaryrefslogtreecommitdiffstats
path: root/tests/rustdoc/reexport-stability-tags-unstable-and-portability.rs
blob: ff8a910f59f98fa9fa64be8e7c0558385af62c32 (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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
#![crate_name = "foo"]
#![feature(doc_cfg)]
#![feature(staged_api)]
#![stable(feature = "rust1", since = "1.0.0")]

#[stable(feature = "rust1", since = "1.0.0")]
pub mod tag {
    #[unstable(feature = "humans", issue = "none")]
    pub trait Unstable {}

    #[stable(feature = "rust1", since = "1.0.0")]
    #[doc(cfg(feature = "sync"))]
    pub trait Portability {}

    #[unstable(feature = "humans", issue = "none")]
    #[doc(cfg(feature = "sync"))]
    pub trait Both {}

    #[stable(feature = "rust1", since = "1.0.0")]
    pub trait None {}
}

// @has foo/mod1/index.html
#[stable(feature = "rust1", since = "1.0.0")]
pub mod mod1 {
    // @has - '//code' 'pub use tag::Unstable;'
    // @has - '//span' 'Experimental'
    // @!has - '//span' 'sync'
    #[stable(feature = "rust1", since = "1.0.0")]
    pub use tag::Unstable;
}

// @has foo/mod2/index.html
#[stable(feature = "rust1", since = "1.0.0")]
pub mod mod2 {
    // @has - '//code' 'pub use tag::Portability;'
    // @!has - '//span' 'Experimental'
    // @has - '//span' 'sync'
    #[stable(feature = "rust1", since = "1.0.0")]
    pub use tag::Portability;
}

// @has foo/mod3/index.html
#[stable(feature = "rust1", since = "1.0.0")]
pub mod mod3 {
    // @has - '//code' 'pub use tag::Both;'
    // @has - '//span' 'Experimental'
    // @has - '//span' 'sync'
    #[stable(feature = "rust1", since = "1.0.0")]
    pub use tag::Both;
}

// @has foo/mod4/index.html
#[stable(feature = "rust1", since = "1.0.0")]
pub mod mod4 {
    // @has - '//code' 'pub use tag::None;'
    // @!has - '//span' 'Experimental'
    // @!has - '//span' 'sync'
    #[stable(feature = "rust1", since = "1.0.0")]
    pub use tag::None;
}