pub trait OptionPathExt<T> {
Show 46 methods
// Required methods
fn metadata(self) -> Result<Option<Metadata>>;
fn symlink_metadata(self) -> Result<Option<Metadata>>;
fn canonicalize(self) -> Result<Option<PathBuf>>;
fn read_link(self) -> Result<Option<PathBuf>>;
fn read_dir(self) -> Result<Option<ReadDir>>;
fn try_exists(self) -> Result<Option<bool>>;
fn try_is_file(self) -> Result<Option<bool>>;
fn try_is_dir(self) -> Result<Option<bool>>;
fn try_is_symlink(self) -> Result<Option<bool>>;
fn try_exists_nofollow(self) -> Result<Option<bool>>;
fn try_is_file_nofollow(self) -> Result<Option<bool>>;
fn try_is_dir_nofollow(self) -> Result<Option<bool>>;
fn try_is_read_link_broken(self) -> Result<Option<bool>>;
fn try_is_read_dir_empty(self) -> Result<Option<bool>>;
fn create_new(self) -> Result<Option<File>>;
fn create(self) -> Result<Option<File>>;
fn open(self) -> Result<Option<File>>;
fn read(self) -> Result<Option<Vec<u8>>>;
fn read_to_string(self) -> Result<Option<String>>;
fn read_lines(self) -> Result<Option<Lines<BufReader<File>>>>;
fn create_dir_all(self) -> Result<Option<T>>;
fn create_dir(self) -> Result<Option<T>>;
fn write_new(self, contents: impl AsRef<[u8]>) -> Result<Option<T>>;
fn write(self, contents: impl AsRef<[u8]>) -> Result<Option<T>>;
fn append(self, contents: impl AsRef<[u8]>) -> Result<Option<T>>;
fn copy(self, to: impl AsRef<Path>) -> Result<Option<T>>;
fn rename(self, to: impl AsRef<Path>) -> Result<Option<T>>;
fn remove_file(self) -> Result<Option<T>>;
fn remove_dir(self) -> Result<Option<T>>;
fn remove_dir_all(self) -> Result<Option<T>>;
fn hard_link(self, link: impl AsRef<Path>) -> Result<Option<T>>;
fn hard_link_atomic(self, link: impl AsRef<Path>) -> Result<Option<T>>;
fn symlink(self, link: impl AsRef<Path>) -> Result<Option<T>>;
fn symlink_atomic(self, link: impl AsRef<Path>) -> Result<Option<T>>;
fn symlink_absolute(self, link: impl AsRef<Path>) -> Result<Option<T>>;
fn symlink_absolute_atomic(
self,
link: impl AsRef<Path>,
) -> Result<Option<T>>;
fn symlink_relative(self, link: impl AsRef<Path>) -> Result<Option<T>>;
fn symlink_relative_atomic(
self,
link: impl AsRef<Path>,
) -> Result<Option<T>>;
fn set_permissions(self, perm: Permissions) -> Result<Option<T>>;
fn set_permissions_readonly(self, readonly: bool) -> Result<Option<T>>;
fn set_permissions_mode(self, mode: u32) -> Result<Option<T>>;
fn add_permissions_mode(self, mode: u32) -> Result<Option<T>>;
fn remove_permissions_mode(self, mode: u32) -> Result<Option<T>>;
fn chown(self, uid: Option<u32>, gid: Option<u32>) -> Result<Option<T>>;
fn chown_nofollow(
self,
uid: Option<u32>,
gid: Option<u32>,
) -> Result<Option<T>>;
fn chroot(self) -> Result<Option<T>>;
}Required Methods§
fn metadata(self) -> Result<Option<Metadata>>
fn symlink_metadata(self) -> Result<Option<Metadata>>
fn canonicalize(self) -> Result<Option<PathBuf>>
fn read_link(self) -> Result<Option<PathBuf>>
fn read_dir(self) -> Result<Option<ReadDir>>
fn try_exists(self) -> Result<Option<bool>>
fn try_is_file(self) -> Result<Option<bool>>
fn try_is_dir(self) -> Result<Option<bool>>
fn try_is_symlink(self) -> Result<Option<bool>>
fn try_exists_nofollow(self) -> Result<Option<bool>>
fn try_is_file_nofollow(self) -> Result<Option<bool>>
fn try_is_dir_nofollow(self) -> Result<Option<bool>>
fn try_is_read_link_broken(self) -> Result<Option<bool>>
fn try_is_read_dir_empty(self) -> Result<Option<bool>>
fn create_new(self) -> Result<Option<File>>
fn create(self) -> Result<Option<File>>
fn open(self) -> Result<Option<File>>
fn read(self) -> Result<Option<Vec<u8>>>
fn read_to_string(self) -> Result<Option<String>>
fn read_lines(self) -> Result<Option<Lines<BufReader<File>>>>
fn create_dir_all(self) -> Result<Option<T>>
fn create_dir(self) -> Result<Option<T>>
fn write_new(self, contents: impl AsRef<[u8]>) -> Result<Option<T>>
fn write(self, contents: impl AsRef<[u8]>) -> Result<Option<T>>
fn append(self, contents: impl AsRef<[u8]>) -> Result<Option<T>>
fn copy(self, to: impl AsRef<Path>) -> Result<Option<T>>
fn rename(self, to: impl AsRef<Path>) -> Result<Option<T>>
fn remove_file(self) -> Result<Option<T>>
fn remove_dir(self) -> Result<Option<T>>
fn remove_dir_all(self) -> Result<Option<T>>
fn hard_link(self, link: impl AsRef<Path>) -> Result<Option<T>>
fn hard_link_atomic(self, link: impl AsRef<Path>) -> Result<Option<T>>
fn symlink(self, link: impl AsRef<Path>) -> Result<Option<T>>
Available on Unix only.
fn symlink_atomic(self, link: impl AsRef<Path>) -> Result<Option<T>>
Available on Unix only.
fn symlink_absolute(self, link: impl AsRef<Path>) -> Result<Option<T>>
Available on Unix only.
fn symlink_absolute_atomic(self, link: impl AsRef<Path>) -> Result<Option<T>>
Available on Unix only.
fn symlink_relative(self, link: impl AsRef<Path>) -> Result<Option<T>>
Available on Unix only.
fn symlink_relative_atomic(self, link: impl AsRef<Path>) -> Result<Option<T>>
Available on Unix only.
fn set_permissions(self, perm: Permissions) -> Result<Option<T>>
fn set_permissions_readonly(self, readonly: bool) -> Result<Option<T>>
fn set_permissions_mode(self, mode: u32) -> Result<Option<T>>
Available on Unix only.
fn add_permissions_mode(self, mode: u32) -> Result<Option<T>>
Available on Unix only.
fn remove_permissions_mode(self, mode: u32) -> Result<Option<T>>
Available on Unix only.
fn chown(self, uid: Option<u32>, gid: Option<u32>) -> Result<Option<T>>
Available on Unix only.
fn chown_nofollow(self, uid: Option<u32>, gid: Option<u32>) -> Result<Option<T>>
Available on Unix only.
fn chroot(self) -> Result<Option<T>>
Available on Unix and non-Fuchsia only.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".
Implementations on Foreign Types§
Source§impl<T: PathExt> OptionPathExt<T> for Option<T>
impl<T: PathExt> OptionPathExt<T> for Option<T>
fn metadata(self) -> Result<Option<Metadata>>
fn symlink_metadata(self) -> Result<Option<Metadata>>
fn canonicalize(self) -> Result<Option<PathBuf>>
fn read_link(self) -> Result<Option<PathBuf>>
fn read_dir(self) -> Result<Option<ReadDir>>
fn try_exists(self) -> Result<Option<bool>>
fn try_is_file(self) -> Result<Option<bool>>
fn try_is_dir(self) -> Result<Option<bool>>
fn try_is_symlink(self) -> Result<Option<bool>>
fn try_exists_nofollow(self) -> Result<Option<bool>>
fn try_is_file_nofollow(self) -> Result<Option<bool>>
fn try_is_dir_nofollow(self) -> Result<Option<bool>>
fn try_is_read_link_broken(self) -> Result<Option<bool>>
fn try_is_read_dir_empty(self) -> Result<Option<bool>>
fn create_new(self) -> Result<Option<File>>
fn create(self) -> Result<Option<File>>
fn open(self) -> Result<Option<File>>
fn read(self) -> Result<Option<Vec<u8>>>
fn read_to_string(self) -> Result<Option<String>>
fn read_lines(self) -> Result<Option<Lines<BufReader<File>>>>
fn create_dir_all(self) -> Result<Option<T>>
fn create_dir(self) -> Result<Option<T>>
fn write_new(self, contents: impl AsRef<[u8]>) -> Result<Option<T>>
fn write(self, contents: impl AsRef<[u8]>) -> Result<Option<T>>
fn append(self, contents: impl AsRef<[u8]>) -> Result<Option<T>>
fn copy(self, to: impl AsRef<Path>) -> Result<Option<T>>
fn rename(self, to: impl AsRef<Path>) -> Result<Option<T>>
fn remove_file(self) -> Result<Option<T>>
fn remove_dir(self) -> Result<Option<T>>
fn remove_dir_all(self) -> Result<Option<T>>
fn hard_link(self, link: impl AsRef<Path>) -> Result<Option<T>>
fn hard_link_atomic(self, link: impl AsRef<Path>) -> Result<Option<T>>
Source§fn symlink_absolute(self, link: impl AsRef<Path>) -> Result<Option<T>>
fn symlink_absolute(self, link: impl AsRef<Path>) -> Result<Option<T>>
Available on Unix only.
Source§fn symlink_absolute_atomic(self, link: impl AsRef<Path>) -> Result<Option<T>>
fn symlink_absolute_atomic(self, link: impl AsRef<Path>) -> Result<Option<T>>
Available on Unix only.
Source§fn symlink_relative(self, link: impl AsRef<Path>) -> Result<Option<T>>
fn symlink_relative(self, link: impl AsRef<Path>) -> Result<Option<T>>
Available on Unix only.
Source§fn symlink_relative_atomic(self, link: impl AsRef<Path>) -> Result<Option<T>>
fn symlink_relative_atomic(self, link: impl AsRef<Path>) -> Result<Option<T>>
Available on Unix only.
fn set_permissions(self, perm: Permissions) -> Result<Option<T>>
fn set_permissions_readonly(self, readonly: bool) -> Result<Option<T>>
Source§fn chown(self, uid: Option<u32>, gid: Option<u32>) -> Result<Option<T>>
fn chown(self, uid: Option<u32>, gid: Option<u32>) -> Result<Option<T>>
Available on Unix only.