pub struct WebcVolumeFileSystem {
volume: Volume,
}Fields§
§volume: VolumeImplementations§
Source§impl WebcVolumeFileSystem
impl WebcVolumeFileSystem
pub fn new(volume: Volume) -> Self
pub fn volume(&self) -> &Volume
Sourcefn resolve_symlinks(
&self,
path: &Path,
follow_trailing: bool,
) -> Result<(PathBuf, Option<WebcMetadata>), FsError>
fn resolve_symlinks( &self, path: &Path, follow_trailing: bool, ) -> Result<(PathBuf, Option<WebcMetadata>), FsError>
Resolve path, following symlinks in every intermediate component.
follow_trailing also follows a trailing symlink (stat); otherwise it
is reported as-is (lstat). Returns the resolved path and its metadata
(None if missing) so the caller needn’t look it up again.
Sourcefn expand_first_symlink(
&self,
path: &PathSegments,
) -> Result<Option<PathSegments>, FsError>
fn expand_first_symlink( &self, path: &PathSegments, ) -> Result<Option<PathSegments>, FsError>
Walk path’s components and, if any is a symlink, return path with the
first such symlink replaced by its target. Returns None when no
component is a symlink (i.e. the path is already resolved or is genuinely missing).
Sourcefn expand_symlink_at(
&self,
segments: &[PathSegment],
i: usize,
) -> Result<PathSegments, FsError>
fn expand_symlink_at( &self, segments: &[PathSegment], i: usize, ) -> Result<PathSegments, FsError>
Replace the symlink at segments[..=i] with its target, resolving a
relative target against the link’s parent and keeping any trailing
components. The result is normalized (so .. in the target is applied).
Sourcepub fn mount_all(
container: &Container,
) -> OverlayFileSystem<EmptyFileSystem, Vec<WebcVolumeFileSystem>>
pub fn mount_all( container: &Container, ) -> OverlayFileSystem<EmptyFileSystem, Vec<WebcVolumeFileSystem>>
Get a filesystem where all [Volume]s in a [Container] are mounted to
the root directory.
Trait Implementations§
Source§impl Clone for WebcVolumeFileSystem
impl Clone for WebcVolumeFileSystem
Source§fn clone(&self) -> WebcVolumeFileSystem
fn clone(&self) -> WebcVolumeFileSystem
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for WebcVolumeFileSystem
impl Debug for WebcVolumeFileSystem
Source§impl FileOpener for WebcVolumeFileSystem
impl FileOpener for WebcVolumeFileSystem
fn open( &self, path: &Path, conf: &OpenOptionsConfig, ) -> Result<Box<dyn VirtualFile + Send + Sync + 'static>>
Source§impl FileSystem for WebcVolumeFileSystem
impl FileSystem for WebcVolumeFileSystem
fn readlink(&self, path: &Path) -> Result<PathBuf>
fn read_dir(&self, path: &Path) -> Result<ReadDir, FsError>
fn create_dir(&self, path: &Path) -> Result<(), FsError>
fn remove_dir(&self, path: &Path) -> Result<(), FsError>
fn rename<'a>( &'a self, from: &'a Path, to: &'a Path, ) -> BoxFuture<'a, Result<(), FsError>>
fn metadata(&self, path: &Path) -> Result<Metadata, FsError>
Source§fn symlink_metadata(&self, path: &Path) -> Result<Metadata>
fn symlink_metadata(&self, path: &Path) -> Result<Metadata>
metadata because symlinks aren’t implemented
yet.