2020-01-06 23:57:02 +00:00
// ignore-tidy-linelength
2019-12-03 17:07:00 +00:00
#![ crate_name = " foo " ]
#![ feature(doc_cfg) ]
2020-08-18 20:19:02 +00:00
// @has 'foo/index.html'
// @matches '-' '//*[@class="module-item"]//*[@class="stab portability"]' '^sync$'
// @has '-' '//*[@class="module-item"]//*[@class="stab portability"]/@title' 'This is supported on crate feature `sync` only'
2020-01-06 23:57:02 +00:00
// @has 'foo/struct.Foo.html'
2020-08-18 20:19:02 +00:00
// @has '-' '//*[@class="stab portability"]' 'sync'
2019-12-03 17:07:00 +00:00
#[ doc(cfg(feature = " sync " )) ]
#[ doc(cfg(feature = " sync " )) ]
pub struct Foo ;
2020-08-18 20:19:02 +00:00
// @has 'foo/bar/index.html'
// @matches '-' '//*[@class="module-item"]//*[@class="stab portability"]' '^sync$'
// @has '-' '//*[@class="module-item"]//*[@class="stab portability"]/@title' 'This is supported on crate feature `sync` only'
2020-01-06 23:57:02 +00:00
// @has 'foo/bar/struct.Bar.html'
2020-08-09 11:25:18 +00:00
// @has '-' '//*[@class="stab portability"]' 'This is supported on crate feature sync only.'
2019-12-03 17:07:00 +00:00
#[ doc(cfg(feature = " sync " )) ]
pub mod bar {
#[ doc(cfg(feature = " sync " )) ]
pub struct Bar ;
}
2020-01-06 23:57:02 +00:00
2020-08-18 20:19:02 +00:00
// @has 'foo/baz/index.html'
// @matches '-' '//*[@class="module-item"]//*[@class="stab portability"]' '^sync and send$'
// @has '-' '//*[@class="module-item"]//*[@class="stab portability"]/@title' 'This is supported on crate features `sync` and `send` only'
2020-01-06 23:57:02 +00:00
// @has 'foo/baz/struct.Baz.html'
2020-08-09 12:01:19 +00:00
// @has '-' '//*[@class="stab portability"]' 'This is supported on crate features sync and send only.'
2020-01-06 23:57:02 +00:00
#[ doc(cfg(all(feature = " sync " , feature = " send " ))) ]
pub mod baz {
#[ doc(cfg(feature = " sync " )) ]
pub struct Baz ;
}
// @has 'foo/qux/struct.Qux.html'
2020-08-09 12:01:19 +00:00
// @has '-' '//*[@class="stab portability"]' 'This is supported on crate features sync and send only.'
2020-01-06 23:57:02 +00:00
#[ doc(cfg(feature = " sync " )) ]
pub mod qux {
#[ doc(cfg(all(feature = " sync " , feature = " send " ))) ]
pub struct Qux ;
}
2020-08-18 20:19:02 +00:00
// @has 'foo/quux/index.html'
// @matches '-' '//*[@class="module-item"]//*[@class="stab portability"]' '^sync and send and foo and bar$'
// @has '-' '//*[@class="module-item"]//*[@class="stab portability"]/@title' 'This is supported on crate feature `sync` and crate feature `send` and `foo` and `bar` only'
2020-01-06 23:57:02 +00:00
// @has 'foo/quux/struct.Quux.html'
2020-08-09 11:25:18 +00:00
// @has '-' '//*[@class="stab portability"]' 'This is supported on crate feature sync and crate feature send and foo and bar only.'
2020-01-06 23:57:02 +00:00
#[ doc(cfg(all(feature = " sync " , feature = " send " , foo))) ]
pub mod quux {
#[ doc(cfg(all(feature = " send " , feature = " sync " , bar))) ]
pub struct Quux ;
}