lib/core: Added `is_dir` function to `Path`
authorLucas Bajolet <r4pass@hotmail.com>
Thu, 26 May 2016 18:55:49 +0000 (14:55 -0400)
committerLucas Bajolet <r4pass@hotmail.com>
Thu, 26 May 2016 18:55:49 +0000 (14:55 -0400)
Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>

lib/core/file.nit

index def1cd2..7f1d481 100644 (file)
@@ -663,6 +663,19 @@ class Path
                return res
        end
 
+       # Is `self` the path to an existing directory ?
+       #
+       # ~~~nit
+       # assert ".".to_path.is_dir
+       # assert not "/etc/issue".to_path.is_dir
+       # assert not "/should/not/exist".to_path.is_dir
+       # ~~~
+       fun is_dir: Bool do
+               var st = stat
+               if st == null then return false
+               return st.is_dir
+       end
+
        # Delete a directory and all of its content
        #
        # Does not go through symbolic links and may get stuck in a cycle if there