You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
37 lines
501 B
37 lines
501 B
use async_trait::async_trait;
|
|
|
|
struct A;
|
|
struct B;
|
|
|
|
#[async_trait]
|
|
pub trait Trait<'r> {
|
|
async fn method(&'r self);
|
|
}
|
|
|
|
#[async_trait]
|
|
impl Trait for A {
|
|
async fn method(&self) { }
|
|
}
|
|
|
|
#[async_trait]
|
|
impl<'r> Trait<'r> for B {
|
|
async fn method(&self) { }
|
|
}
|
|
|
|
#[async_trait]
|
|
pub trait Trait2 {
|
|
async fn method<'r>(&'r self);
|
|
}
|
|
|
|
#[async_trait]
|
|
impl Trait2 for A {
|
|
async fn method(&self) { }
|
|
}
|
|
|
|
#[async_trait]
|
|
impl<'r> Trait2<'r> for B {
|
|
async fn method(&'r self) { }
|
|
}
|
|
|
|
fn main() {}
|