Trait FileLoader

Source
pub trait FileLoader {
    // Required methods
    fn file_exists(&self, path: &Path) -> bool;
    fn read_file(&self, path: &Path) -> Result<String>;
    fn read_binary_file(&self, path: &Path) -> Result<Arc<[u8]>>;
}
Expand description

An abstraction over the fs operations used by the Parser.

Required Methods§

Source

fn file_exists(&self, path: &Path) -> bool

Query the existence of a file.

Source

fn read_file(&self, path: &Path) -> Result<String>

Read the contents of a UTF-8 file into memory. This function must return a String because we normalize source files, which may require resizing.

Source

fn read_binary_file(&self, path: &Path) -> Result<Arc<[u8]>>

Read the contents of a potentially non-UTF-8 file into memory. We don’t normalize binary files, so we can start in an Arc.

Implementors§