ProvideFile

Trait ProvideFile 

Source
pub trait ProvideFile: Send + Sync {
    // Required methods
    fn provide_source(
        &self,
        id: FileId,
        progress: &mut dyn Progress,
    ) -> FileResult<Source>;
    fn provide_bytes(
        &self,
        id: FileId,
        progress: &mut dyn Progress,
    ) -> FileResult<Bytes>;
    fn reset_all(&self);
}
Expand description

A trait for providing access to files.

Required Methods§

Source

fn provide_source( &self, id: FileId, progress: &mut dyn Progress, ) -> FileResult<Source>

Provides a Typst source with the given file id.

This may download a package, for which the progress callbacks will be used.

Source

fn provide_bytes( &self, id: FileId, progress: &mut dyn Progress, ) -> FileResult<Bytes>

Provides a generic file with the given file id.

This may download a package, for which the progress callbacks will be used.

Source

fn reset_all(&self)

Reset the cached files for the next compilation.

Implementations on Foreign Types§

Source§

impl<W: ProvideFile> ProvideFile for &W

Source§

fn provide_source( &self, id: FileId, progress: &mut dyn Progress, ) -> FileResult<Source>

Source§

fn provide_bytes( &self, id: FileId, progress: &mut dyn Progress, ) -> FileResult<Bytes>

Source§

fn reset_all(&self)

Source§

impl<W: ProvideFile> ProvideFile for Box<W>

Source§

fn provide_source( &self, id: FileId, progress: &mut dyn Progress, ) -> FileResult<Source>

Source§

fn provide_bytes( &self, id: FileId, progress: &mut dyn Progress, ) -> FileResult<Bytes>

Source§

fn reset_all(&self)

Source§

impl<W: ProvideFile> ProvideFile for Arc<W>

Source§

fn provide_source( &self, id: FileId, progress: &mut dyn Progress, ) -> FileResult<Source>

Source§

fn provide_bytes( &self, id: FileId, progress: &mut dyn Progress, ) -> FileResult<Bytes>

Source§

fn reset_all(&self)

Implementors§