pub trait ProgramStore: Send + Sync {
// Required methods
fn resolve<'a>(
&'a self,
program: &'a ProgramRef,
) -> PortFuture<'a, ProgramDescriptor>;
fn fetch<'a>(
&'a self,
descriptor: &'a ProgramDescriptor,
) -> PortFuture<'a, Vec<u8>>;
}Expand description
Store futures must retain their underlying I/O until completion. Dropping a future is not proof that blocking or remote work stopped. The worker retains an admitted fetch after its response deadline until that future completes. Adapters must report completion only after their owned work has finished.
Required Methods§
fn resolve<'a>( &'a self, program: &'a ProgramRef, ) -> PortFuture<'a, ProgramDescriptor>
fn fetch<'a>( &'a self, descriptor: &'a ProgramDescriptor, ) -> PortFuture<'a, Vec<u8>>
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".