pub trait AcquireAttributeWithResourceAndContext<C: Send>: Sized + ConstraintT {
fn prove_with_resource_and_context_async<'ctx, 'async_trait, Attr, const STAG: &'static str, const RTAG: &'static str>(
self,
context: C
) -> Pin<Box<dyn Future<Output = Result<ConstraintChain<STAG, RTAG, Attr, Self>, Attr::Error>> + Send + 'async_trait>>
where
Attr::Subject: ConstraintEntity + 'static,
Attr::Resource: ConstraintEntity + 'static,
C: 'async_trait,
Self: HasEntityWithType<STAG, Attr::Subject>,
Self: HasEntityWithType<RTAG, Attr::Resource>,
Attr: AsyncAttribute<Context<'ctx> = C>,
'ctx: 'async_trait,
Attr: 'async_trait,
Self: Send + 'async_trait,
{ ... }
fn prove_with_resource_and_context<'ctx, Attr, const STAG: &'static str, const RTAG: &'static str>(
self,
context: C
) -> Result<ConstraintChain<STAG, RTAG, Attr, Self>, Attr::Error>
where
Attr::Subject: ConstraintEntity + 'static,
Attr::Resource: ConstraintEntity + 'static,
Self: HasEntityWithType<STAG, Attr::Subject>,
Self: HasEntityWithType<RTAG, Attr::Resource>,
Attr: SyncAttribute<Context<'ctx> = C>,
{ ... }
}