pub trait Backend {
type FileName: AsRef<Path>;
type FileNameIter: IntoIterator<Item = Self::FileName>;
type FileStream: Read;
// Required methods
fn file_names(&self) -> Result<Self::FileNameIter>;
fn open_file(&self, name: &Path) -> Result<Self::FileStream>;
}
Expand description
A trait used to provide a transport layer for backup files.
Required Associated Types§
sourcetype FileNameIter: IntoIterator<Item = Self::FileName>
type FileNameIter: IntoIterator<Item = Self::FileName>
An iterator over filenames.
sourcetype FileStream: Read
type FileStream: Read
A file managed by the backend. It must implement the Read
trait.
Required Methods§
sourcefn file_names(&self) -> Result<Self::FileNameIter>
fn file_names(&self) -> Result<Self::FileNameIter>
Returns a list of available file names.
The file names returned should have an extension, and do not contain the base path.
sourcefn open_file(&self, name: &Path) -> Result<Self::FileStream>
fn open_file(&self, name: &Path) -> Result<Self::FileStream>
Opens a file for reading.