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
|
pub struct Nested;
pub trait Trait<T> {
fn thank_you(x: T);
}
pub fn abracadabra<X>(_: X)
where
X: Trait<Nested>,
{
}
pub fn alacazam<X>() -> X
where
X: Trait<Nested>,
{
}
pub trait T1 {}
pub trait T2<'a, T> {
fn please(_: &'a T);
}
pub fn presto<A, B>(_: A, _: B)
where
A: T1,
B: for<'b> T2<'b, Nested>,
{
}
pub trait Shazam {}
pub fn bippety<X>() -> &'static X
where
X: Shazam,
{
panic!()
}
pub struct Drizzel<T>(T);
impl<T> Drizzel<T> {
pub fn boppety(&self) -> &T
where
T: Shazam,
{
panic!();
}
}
|