2023-03-04 03:23:00 +00:00
|
|
|
pub struct Nested;
|
|
|
|
|
|
|
|
pub trait Trait<T> {
|
|
|
|
fn thank_you(x: T);
|
|
|
|
}
|
|
|
|
|
2024-06-03 07:35:56 +00:00
|
|
|
pub fn abracadabra<X>(_: X)
|
|
|
|
where
|
|
|
|
X: Trait<Nested>,
|
|
|
|
{
|
|
|
|
}
|
2023-03-04 03:23:00 +00:00
|
|
|
|
2024-06-03 07:35:56 +00:00
|
|
|
pub fn alacazam<X>() -> X
|
|
|
|
where
|
|
|
|
X: Trait<Nested>,
|
|
|
|
{
|
|
|
|
}
|
2023-03-04 03:23:00 +00:00
|
|
|
|
|
|
|
pub trait T1 {}
|
|
|
|
pub trait T2<'a, T> {
|
|
|
|
fn please(_: &'a T);
|
|
|
|
}
|
|
|
|
|
2024-06-03 07:35:56 +00:00
|
|
|
pub fn presto<A, B>(_: A, _: B)
|
|
|
|
where
|
|
|
|
A: T1,
|
|
|
|
B: for<'b> T2<'b, Nested>,
|
|
|
|
{
|
|
|
|
}
|
2023-03-07 17:06:42 +00:00
|
|
|
|
|
|
|
pub trait Shazam {}
|
|
|
|
|
2024-06-03 07:35:56 +00:00
|
|
|
pub fn bippety<X>() -> &'static X
|
|
|
|
where
|
|
|
|
X: Shazam,
|
|
|
|
{
|
2023-03-07 17:06:42 +00:00
|
|
|
panic!()
|
|
|
|
}
|
2023-03-07 18:21:12 +00:00
|
|
|
|
|
|
|
pub struct Drizzel<T>(T);
|
|
|
|
|
|
|
|
impl<T> Drizzel<T> {
|
2024-06-03 07:35:56 +00:00
|
|
|
pub fn boppety(&self) -> &T
|
|
|
|
where
|
|
|
|
T: Shazam,
|
|
|
|
{
|
2023-03-07 18:21:12 +00:00
|
|
|
panic!();
|
|
|
|
}
|
|
|
|
}
|