about summary refs log tree commit diff
path: root/src/libstd
diff options
context:
space:
mode:
authorJohannes Hoff <johshoff@gmail.com>2015-05-16 16:07:52 -0700
committerJohannes Hoff <johshoff@gmail.com>2015-05-16 16:07:52 -0700
commitb6e755df66eb5c54055ceef559ff985ddf78c446 (patch)
treee9745495ccbe57ffa3ce3ec122b33ec986f2395e /src/libstd
parent0d707d15f6ee4bef23cca36ce5f98aaf0ca707f9 (diff)
downloadrust-b6e755df66eb5c54055ceef559ff985ddf78c446.tar.gz
rust-b6e755df66eb5c54055ceef559ff985ddf78c446.zip
fs::walk_dir example without unstable features
The current version of the example won't compile due to unstable features.
This is an attempt to fix that, at the cost of slightly more verbose code.
Diffstat (limited to 'src/libstd')
-rw-r--r--src/libstd/fs.rs11
1 files changed, 5 insertions, 6 deletions
diff --git a/src/libstd/fs.rs b/src/libstd/fs.rs
index fc5405ea7f6..481d9e69abd 100644
--- a/src/libstd/fs.rs
+++ b/src/libstd/fs.rs
@@ -1099,20 +1099,19 @@ pub fn remove_dir_all<P: AsRef<Path>>(path: P) -> io::Result<()> {
 /// # Examples
 ///
 /// ```
-/// # #![feature(path_ext)]
 /// use std::io;
-/// use std::fs::{self, PathExt, DirEntry};
+/// use std::fs::{self, DirEntry};
 /// use std::path::Path;
 ///
 /// // one possible implementation of fs::walk_dir only visiting files
-/// fn visit_dirs(dir: &Path, cb: &mut FnMut(DirEntry)) -> io::Result<()> {
-///     if dir.is_dir() {
+/// fn visit_dirs(dir: &Path, cb: &Fn(&DirEntry)) -> io::Result<()> {
+///     if try!(fs::metadata(dir)).is_dir() {
 ///         for entry in try!(fs::read_dir(dir)) {
 ///             let entry = try!(entry);
-///             if entry.path().is_dir() {
+///             if try!(fs::metadata(entry.path())).is_dir() {
 ///                 try!(visit_dirs(&entry.path(), cb));
 ///             } else {
-///                 cb(entry);
+///                 cb(&entry);
 ///             }
 ///         }
 ///     }