Add Ancestors
wrapper
This commit is contained in:
parent
4638ff0b54
commit
5e757f9861
|
@ -1206,12 +1206,34 @@ impl<'a, Form: PathForm> IntoIterator for &'a Path<Form> {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Clone, Copy, Debug)]
|
/// An iterator over [`Path`] and its ancestors.
|
||||||
|
///
|
||||||
|
/// This `struct` is created by the [`ancestors`](Path::ancestors) method on [`Path`].
|
||||||
|
/// See its documentation for more.
|
||||||
|
///
|
||||||
|
/// # Examples
|
||||||
|
///
|
||||||
|
/// ```
|
||||||
|
/// use nu_path::Path;
|
||||||
|
///
|
||||||
|
/// let path = Path::new("/foo/bar");
|
||||||
|
///
|
||||||
|
/// for ancestor in path.ancestors() {
|
||||||
|
/// println!("{}", ancestor.display());
|
||||||
|
/// }
|
||||||
|
/// ```
|
||||||
|
#[derive(Clone, Copy)]
|
||||||
pub struct Ancestors<'a, Form: PathForm> {
|
pub struct Ancestors<'a, Form: PathForm> {
|
||||||
_form: PhantomData<Form>,
|
_form: PhantomData<Form>,
|
||||||
inner: std::path::Ancestors<'a>,
|
inner: std::path::Ancestors<'a>,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl<Form: PathForm> fmt::Debug for Ancestors<'_, Form> {
|
||||||
|
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
||||||
|
fmt::Debug::fmt(&self.inner, f)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
impl<'a, Form: PathForm> Iterator for Ancestors<'a, Form> {
|
impl<'a, Form: PathForm> Iterator for Ancestors<'a, Form> {
|
||||||
type Item = &'a Path<Form>;
|
type Item = &'a Path<Form>;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user