1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
// Take a look at the license at the top of the repository in the LICENSE file.
use crate::prelude::*;
use crate::FileEnumerator;
use crate::FileInfo;
use std::iter::FusedIterator;
impl Iterator for FileEnumerator {
type Item = Result<FileInfo, glib::Error>;
fn next(&mut self) -> Option<Result<FileInfo, glib::Error>> {
match self.next_file(crate::Cancellable::NONE) {
Err(err) => Some(Err(err)),
Ok(file_info) => file_info.map(Ok),
}
}
}
impl FusedIterator for FileEnumerator {}