Trait LoaderIO

Source
pub trait LoaderIO: Sync + Send {
    // Required methods
    fn update(&mut self);
    fn current_build_hash(&self) -> ManifestBuildHash;
    fn pending_build_hash(&self) -> Option<ManifestBuildHash>;
    fn activate_pending_build_hash(&mut self, new_build_hash: ManifestBuildHash);
    fn manifest_entry(
        &self,
        artifact_id: ArtifactId,
    ) -> Option<&ArtifactManifestData>;
    fn resolve_indirect(
        &self,
        indirect_identifier: &IndirectIdentifier,
    ) -> Option<&ArtifactManifestData>;
    fn request_metadata(
        &self,
        build_hash: ManifestBuildHash,
        load_handle: LoadHandle,
        artifact_id: ArtifactId,
    );
    fn request_data(
        &self,
        build_hash: ManifestBuildHash,
        load_handle: LoadHandle,
        artifact_id: ArtifactId,
        hash: u64,
    );
}

Required Methods§

Source

fn update(&mut self)

Source

fn current_build_hash(&self) -> ManifestBuildHash

Source

fn pending_build_hash(&self) -> Option<ManifestBuildHash>

Source

fn activate_pending_build_hash(&mut self, new_build_hash: ManifestBuildHash)

Source

fn manifest_entry( &self, artifact_id: ArtifactId, ) -> Option<&ArtifactManifestData>

Source

fn resolve_indirect( &self, indirect_identifier: &IndirectIdentifier, ) -> Option<&ArtifactManifestData>

Source

fn request_metadata( &self, build_hash: ManifestBuildHash, load_handle: LoadHandle, artifact_id: ArtifactId, )

Source

fn request_data( &self, build_hash: ManifestBuildHash, load_handle: LoadHandle, artifact_id: ArtifactId, hash: u64, )

Implementors§