pub struct AbsPath(/* private fields */);
Expand description
Wrapper around an absolute Utf8Path
.
Implementations§
Source§impl AbsPath
impl AbsPath
Sourcepub fn parent(&self) -> Option<&AbsPath>
pub fn parent(&self) -> Option<&AbsPath>
Equivalent of Utf8Path::parent
for AbsPath
.
Sourcepub fn absolutize(&self, path: impl AsRef<Utf8Path>) -> AbsPathBuf
pub fn absolutize(&self, path: impl AsRef<Utf8Path>) -> AbsPathBuf
Equivalent of Utf8Path::join
for AbsPath
with an additional normalize step afterwards.
Sourcepub fn join(&self, path: impl AsRef<Utf8Path>) -> AbsPathBuf
pub fn join(&self, path: impl AsRef<Utf8Path>) -> AbsPathBuf
Equivalent of Utf8Path::join
for AbsPath
.
Sourcepub fn normalize(&self) -> AbsPathBuf
pub fn normalize(&self) -> AbsPathBuf
Normalize the given path:
- Removes repeated separators:
/a//b
becomes/a/b
- Removes occurrences of
.
and resolves..
. - Removes trailing slashes:
/a/b/
becomes/a/b
.
§Example
let abs_path_buf = AbsPathBuf::assert("/a/../../b/.//c//".into());
let normalized = abs_path_buf.normalize();
assert_eq!(normalized, AbsPathBuf::assert("/b/c".into()));
Sourcepub fn to_path_buf(&self) -> AbsPathBuf
pub fn to_path_buf(&self) -> AbsPathBuf
Equivalent of Utf8Path::to_path_buf
for AbsPath
.
pub fn canonicalize(&self) -> !
Sourcepub fn strip_prefix(&self, base: &AbsPath) -> Option<&RelPath>
pub fn strip_prefix(&self, base: &AbsPath) -> Option<&RelPath>
Equivalent of Utf8Path::strip_prefix
for AbsPath
.
Returns a relative path.
pub fn starts_with(&self, base: &AbsPath) -> bool
pub fn ends_with(&self, suffix: &RelPath) -> bool
pub fn name_and_extension(&self) -> Option<(&str, Option<&str>)>
pub fn file_name(&self) -> Option<&str>
pub fn extension(&self) -> Option<&str>
pub fn file_stem(&self) -> Option<&str>
pub fn as_os_str(&self) -> &OsStr
pub fn as_str(&self) -> &str
pub fn display(&self) -> !
👎Deprecated: use Display instead
pub fn exists(&self) -> !
👎Deprecated: use std::fs::metadata().is_ok() instead
pub fn components(&self) -> Utf8Components<'_> ⓘ
Trait Implementations§
Source§impl AsRef<AbsPath> for AbsPathBuf
impl AsRef<AbsPath> for AbsPathBuf
Source§impl Borrow<AbsPath> for AbsPathBuf
impl Borrow<AbsPath> for AbsPathBuf
Source§impl PartialOrd for AbsPath
impl PartialOrd for AbsPath
Source§impl ToOwned for AbsPath
impl ToOwned for AbsPath
Source§type Owned = AbsPathBuf
type Owned = AbsPathBuf
The resulting type after obtaining ownership.
Source§fn to_owned(&self) -> Self::Owned
fn to_owned(&self) -> Self::Owned
Creates owned data from borrowed data, usually by cloning. Read more
1.63.0 · Source§fn clone_into(&self, target: &mut Self::Owned)
fn clone_into(&self, target: &mut Self::Owned)
Uses borrowed data to replace owned data, usually by cloning. Read more