]> gitweb.factorcode.org Git - factor.git/commitdiff
io.files.info: support some funny uses of directory?...
authorJohn Benediktsson <mrjbq7@gmail.com>
Fri, 5 Mar 2021 04:58:34 +0000 (20:58 -0800)
committerJohn Benediktsson <mrjbq7@gmail.com>
Fri, 5 Mar 2021 04:58:34 +0000 (20:58 -0800)
e.g., T{ directory-entry } directory?

basis/io/files/info/info.factor

index 54472904aada578cdeda020b8bc9cfd067843608..b920fc2435084f97a28b3e63726806bd8c6dfe32 100644 (file)
@@ -1,7 +1,8 @@
 ! Copyright (C) 2008 Doug Coleman, Eduardo Cavazos.
 ! See http://factorcode.org/license.txt for BSD license.
-USING: accessors assocs combinators io.files io.files.types
-io.pathnames kernel math system vocabs ;
+USING: accessors assocs combinators combinators.short-circuit
+io.files io.files.types io.pathnames kernel math strings system
+vocabs ;
 IN: io.files.info
 
 ! File info
@@ -21,7 +22,7 @@ HOOK: link-info os ( path -- info )
 <PRIVATE
 
 : >file-info ( path/info -- info )
-    dup file-info-tuple? [ file-info ] unless ; inline
+    dup { [ string? ] [ pathname? ] } 1|| [ file-info ] when ;
 
 PRIVATE>