]> gitweb.factorcode.org Git - factor.git/commitdiff
io.files.windows: make win32-file-attributes a little faster.
authorJohn Benediktsson <mrjbq7@gmail.com>
Fri, 7 Feb 2020 22:11:43 +0000 (14:11 -0800)
committerJohn Benediktsson <mrjbq7@gmail.com>
Fri, 7 Feb 2020 22:11:43 +0000 (14:11 -0800)
basis/io/files/windows/windows.factor

index 2bdb64cbfbabafc57f019fe673416ab5dc1d1925..6998bdd699c4f4898a35a5be5edc02050bee16cf 100644 (file)
@@ -282,22 +282,21 @@ SLOT: attributes
 
 : win32-file-attributes ( n -- seq )
     {
-        { +read-only+ FILE_ATTRIBUTE_READONLY }
-        { +hidden+ FILE_ATTRIBUTE_HIDDEN }
-        { +system+ FILE_ATTRIBUTE_SYSTEM }
-        { +directory+ FILE_ATTRIBUTE_DIRECTORY }
-        { +archive+ FILE_ATTRIBUTE_ARCHIVE }
-        { +device+ FILE_ATTRIBUTE_DEVICE }
-        { +normal+ FILE_ATTRIBUTE_NORMAL }
-        { +temporary+ FILE_ATTRIBUTE_TEMPORARY }
-        { +sparse-file+ FILE_ATTRIBUTE_SPARSE_FILE }
-        { +reparse-point+ FILE_ATTRIBUTE_REPARSE_POINT }
-        { +compressed+ FILE_ATTRIBUTE_COMPRESSED }
-        { +offline+ FILE_ATTRIBUTE_OFFLINE }
-        { +not-content-indexed+ FILE_ATTRIBUTE_NOT_CONTENT_INDEXED }
-        { +encrypted+ FILE_ATTRIBUTE_ENCRYPTED }
-    }
-    [ execute( -- y ) mask? [ drop f ] unless ] with { } assoc>map sift ;
+        { +read-only+ $ FILE_ATTRIBUTE_READONLY }
+        { +hidden+ $ FILE_ATTRIBUTE_HIDDEN }
+        { +system+ $ FILE_ATTRIBUTE_SYSTEM }
+        { +directory+ $ FILE_ATTRIBUTE_DIRECTORY }
+        { +archive+ $ FILE_ATTRIBUTE_ARCHIVE }
+        { +device+ $ FILE_ATTRIBUTE_DEVICE }
+        { +normal+ $ FILE_ATTRIBUTE_NORMAL }
+        { +temporary+ $ FILE_ATTRIBUTE_TEMPORARY }
+        { +sparse-file+ $ FILE_ATTRIBUTE_SPARSE_FILE }
+        { +reparse-point+ $ FILE_ATTRIBUTE_REPARSE_POINT }
+        { +compressed+ $ FILE_ATTRIBUTE_COMPRESSED }
+        { +offline+ $ FILE_ATTRIBUTE_OFFLINE }
+        { +not-content-indexed+ $ FILE_ATTRIBUTE_NOT_CONTENT_INDEXED }
+        { +encrypted+ $ FILE_ATTRIBUTE_ENCRYPTED }
+    } [ mask? [ drop f ] unless ] with { } assoc>map sift ;
 
 : win32-file-type ( n -- symbol )
     FILE_ATTRIBUTE_DIRECTORY mask? +directory+ +regular-file+ ? ;