pub trait ProjFS {
// Required methods
fn start_dir_enum(
&self,
id: Guid,
path: RawPath<'_>,
version: VersionInfo,
) -> Result<()>;
fn end_dir_enum(&self, id: Guid, version: VersionInfo) -> Result<()>;
fn get_dir_enum(
&self,
id: Guid,
path: RawPath<'_>,
flags: CallbackDataFlags,
version: VersionInfo,
pattern: Option<RawPath<'_>>,
handle: DirHandle,
) -> Result<()>;
fn get_metadata(
&self,
path: RawPath<'_>,
version: VersionInfo,
) -> Result<FileBasicInfo>;
fn read(
&self,
path: RawPath<'_>,
version: VersionInfo,
offset: u64,
buf: &mut [u8],
) -> Result<()>;
// Provided method
fn fill_entries<'a, I: AsRef<FileBasicInfo>, Iter: Iterator<Item = I>>(
iter: &mut Peekable<Iter>,
handle: DirHandle,
) -> usize { ... }
}
Required Methods§
fn start_dir_enum( &self, id: Guid, path: RawPath<'_>, version: VersionInfo, ) -> Result<()>
fn end_dir_enum(&self, id: Guid, version: VersionInfo) -> Result<()>
fn get_dir_enum( &self, id: Guid, path: RawPath<'_>, flags: CallbackDataFlags, version: VersionInfo, pattern: Option<RawPath<'_>>, handle: DirHandle, ) -> Result<()>
fn get_metadata( &self, path: RawPath<'_>, version: VersionInfo, ) -> Result<FileBasicInfo>
fn read( &self, path: RawPath<'_>, version: VersionInfo, offset: u64, buf: &mut [u8], ) -> Result<()>
Provided Methods§
fn fill_entries<'a, I: AsRef<FileBasicInfo>, Iter: Iterator<Item = I>>( iter: &mut Peekable<Iter>, handle: DirHandle, ) -> usize
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.