mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-23 07:14:28 +00:00
add more tests for traits-in-non-module-scope
This commit is contained in:
parent
e79780f18f
commit
7e70fee0c7
@ -320,7 +320,7 @@ impl<'a> fold::DocFolder for ImplStripper<'a> {
|
||||
if let Some(did) = typaram.def_id() {
|
||||
if did.is_local() && !self.retained.contains(&did) {
|
||||
debug!("ImplStripper: stripped item in trait's generics; \
|
||||
removing impl");
|
||||
removing impl");
|
||||
return None;
|
||||
}
|
||||
}
|
||||
|
23
src/test/rustdoc/inline_cross/auxiliary/trait-vis.rs
Normal file
23
src/test/rustdoc/inline_cross/auxiliary/trait-vis.rs
Normal file
@ -0,0 +1,23 @@
|
||||
// Copyright 2018 The Rust Project Developers. See the COPYRIGHT
|
||||
// file at the top-level directory of this distribution and at
|
||||
// http://rust-lang.org/COPYRIGHT.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
#![crate_name = "inner"]
|
||||
|
||||
pub struct SomeStruct;
|
||||
|
||||
fn asdf() {
|
||||
const _FOO: () = {
|
||||
impl Clone for SomeStruct {
|
||||
fn clone(&self) -> Self {
|
||||
SomeStruct
|
||||
}
|
||||
}
|
||||
};
|
||||
}
|
17
src/test/rustdoc/inline_cross/trait-vis.rs
Normal file
17
src/test/rustdoc/inline_cross/trait-vis.rs
Normal file
@ -0,0 +1,17 @@
|
||||
// Copyright 2018 The Rust Project Developers. See the COPYRIGHT
|
||||
// file at the top-level directory of this distribution and at
|
||||
// http://rust-lang.org/COPYRIGHT.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
// aux-build:trait-vis.rs
|
||||
|
||||
extern crate inner;
|
||||
|
||||
// @has trait_vis/struct.SomeStruct.html
|
||||
// @has - '//code' 'impl Clone for SomeStruct'
|
||||
pub use inner::SomeStruct;
|
@ -1,4 +1,4 @@
|
||||
// Copyright 2012-2013 The Rust Project Developers. See the COPYRIGHT
|
||||
// Copyright 2018 The Rust Project Developers. See the COPYRIGHT
|
||||
// file at the top-level directory of this distribution and at
|
||||
// http://rust-lang.org/COPYRIGHT.
|
||||
//
|
||||
|
@ -10,9 +10,6 @@
|
||||
|
||||
#![crate_name = "foo"]
|
||||
|
||||
// we need to reexport something from libstd so that `all_trait_implementations` is called.
|
||||
pub use std::string::String;
|
||||
|
||||
include!("primitive/primitive-generic-impl.rs");
|
||||
|
||||
// @has foo/primitive.i32.html '//h3[@id="impl-ToString"]//code' 'impl<T> ToString for T'
|
||||
|
@ -39,3 +39,24 @@ const _FOO: () = {
|
||||
impl Copy for Point {}
|
||||
()
|
||||
};
|
||||
|
||||
// @has traits_in_bodies/struct.Inception.html
|
||||
// @has - '//code' 'impl Clone for Inception'
|
||||
pub struct Inception;
|
||||
|
||||
static _BAR: usize = {
|
||||
trait HiddenTrait {
|
||||
fn hidden_fn(&self) {
|
||||
for _ in 0..5 {
|
||||
impl Clone for Inception {
|
||||
fn clone(&self) -> Self {
|
||||
// we need to go deeper
|
||||
Inception
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
5
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user