4 #![feature(async_fn_in_trait)]
5 #![feature(return_position_impl_trait_in_trait)]
6 #![allow(incomplete_features)]
8 use std::future::Future;
9 use std::marker::PhantomData;
11 trait Lockable<K, V> {
12 async fn lock_all_entries(&self) -> impl Future<Output = Guard<'_>>;
15 struct Guard<'a>(PhantomData<&'a ()>);