: 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+ ? ;