2022-09-09 20:04:47 -05:00
|
|
|
// @has 'glob_shadowing/index.html'
|
2023-02-07 20:00:18 -06:00
|
|
|
// @count - '//div[@class="item-name"]' 6
|
|
|
|
// @!has - '//div[@class="desc docblock-short"]' 'sub1::describe'
|
|
|
|
// @has - '//div[@class="desc docblock-short"]' 'sub2::describe'
|
2022-09-09 20:04:47 -05:00
|
|
|
|
2023-02-07 20:00:18 -06:00
|
|
|
// @!has - '//div[@class="desc docblock-short"]' 'sub1::describe2'
|
2022-09-09 20:04:47 -05:00
|
|
|
|
2023-02-07 20:00:18 -06:00
|
|
|
// @!has - '//div[@class="desc docblock-short"]' 'sub1::prelude'
|
|
|
|
// @has - '//div[@class="desc docblock-short"]' 'mod::prelude'
|
2022-09-09 20:04:47 -05:00
|
|
|
|
2023-02-07 20:00:18 -06:00
|
|
|
// @has - '//div[@class="desc docblock-short"]' 'sub1::Foo (struct)'
|
|
|
|
// @has - '//div[@class="desc docblock-short"]' 'mod::Foo (function)'
|
2022-09-09 20:04:47 -05:00
|
|
|
|
2023-02-07 20:00:18 -06:00
|
|
|
// @has - '//div[@class="desc docblock-short"]' 'sub4::inner::X'
|
2022-09-09 20:04:47 -05:00
|
|
|
|
|
|
|
// @has 'glob_shadowing/fn.describe.html'
|
|
|
|
// @has - '//div[@class="docblock"]' 'sub2::describe'
|
|
|
|
|
|
|
|
mod sub1 {
|
|
|
|
// this should be shadowed by sub2::describe
|
|
|
|
/// sub1::describe
|
|
|
|
pub fn describe() -> &'static str {
|
|
|
|
"sub1::describe"
|
|
|
|
}
|
|
|
|
|
|
|
|
// this should be shadowed by mod::prelude
|
|
|
|
/// sub1::prelude
|
|
|
|
pub mod prelude {
|
|
|
|
}
|
|
|
|
|
|
|
|
// this should *not* be shadowed, because sub1::Foo and mod::Foo are in different namespaces
|
|
|
|
/// sub1::Foo (struct)
|
|
|
|
pub struct Foo;
|
|
|
|
|
|
|
|
// this should be shadowed,
|
|
|
|
// because both sub1::describe2 and sub3::describe2 are from glob reexport
|
|
|
|
/// sub1::describe2
|
|
|
|
pub fn describe2() -> &'static str {
|
|
|
|
"sub1::describe2"
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
mod sub2 {
|
|
|
|
/// sub2::describe
|
|
|
|
pub fn describe() -> &'static str {
|
|
|
|
"sub2::describe"
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
mod sub3 {
|
|
|
|
// this should be shadowed
|
|
|
|
// because both sub1::describe2 and sub3::describe2 are from glob reexport
|
|
|
|
/// sub3::describe2
|
|
|
|
pub fn describe2() -> &'static str {
|
|
|
|
"sub3::describe2"
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
mod sub4 {
|
|
|
|
// this should be shadowed by sub4::inner::X
|
|
|
|
/// sub4::X
|
|
|
|
pub const X: usize = 0;
|
|
|
|
pub mod inner {
|
|
|
|
pub use super::*;
|
|
|
|
/// sub4::inner::X
|
|
|
|
pub const X: usize = 1;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
/// mod::Foo (function)
|
|
|
|
pub fn Foo() {}
|
|
|
|
|
|
|
|
#[doc(inline)]
|
|
|
|
pub use sub2::describe;
|
|
|
|
|
|
|
|
#[doc(inline)]
|
|
|
|
pub use sub1::*;
|
|
|
|
|
|
|
|
#[doc(inline)]
|
|
|
|
pub use sub3::*;
|
|
|
|
|
|
|
|
#[doc(inline)]
|
|
|
|
pub use sub4::inner::*;
|
|
|
|
|
|
|
|
/// mod::prelude
|
|
|
|
pub mod prelude {}
|