basis/extra: cleanup some platform requires.

db4
John Benediktsson 2014-11-15 14:25:12 -08:00
parent dcbe85fe9c
commit b7ed0a431c
8 changed files with 25 additions and 38 deletions

View File

@ -22,5 +22,4 @@ HOOK: cache-directory os ( -- path )
{ [ os windows? ] [ "io.files.temp.windows" ] }
{ [ os macosx? ] [ "io.files.temp.macosx" ] }
{ [ os unix? ] [ "io.files.temp.unix" ] }
[ "unknown io.files.temp platform" throw ]
} cond require

View File

@ -15,9 +15,9 @@ HOOK: find-in-applications os ( directories filename -- path )
[ [ find-in-path* ] keep over [ append-path ] [ 2drop f ] if ]
if-empty ;
os {
{ [ dup macosx? ] [ drop "io.standard-paths.macosx" require ] }
{ [ dup unix? ] [ drop "io.standard-paths.unix" require ] }
{ [ dup windows? ] [ drop "io.standard-paths.windows" require ] }
} cond
{
{ [ os windows? ] [ "io.standard-paths.windows" ] }
{ [ os macosx? ] [ "io.standard-paths.macosx" ] }
{ [ os unix? ] [ "io.standard-paths.unix" ] }
} cond require

View File

@ -1,14 +1,14 @@
USING: kernel system combinators alien.syntax alien.c-types
math vocabs vocabs.loader unix classes.struct ;
USING: accessors alien.c-types alien.syntax classes.struct
kernel sequences system unix vocabs ;
IN: unix.stat
! File Types
CONSTANT: S_IFMT 0o170000 ! These bits determine file type.
CONSTANT: S_IFDIR 0o40000 ! Directory.
CONSTANT: S_IFCHR 0o20000 ! Character device.
CONSTANT: S_IFBLK 0o60000 ! Block device.
CONSTANT: S_IFDIR 0o040000 ! Directory.
CONSTANT: S_IFCHR 0o020000 ! Character device.
CONSTANT: S_IFBLK 0o060000 ! Block device.
CONSTANT: S_IFREG 0o100000 ! Regular file.
CONSTANT: S_IFIFO 0o010000 ! FIFO.
CONSTANT: S_IFLNK 0o120000 ! Symbolic link.
@ -21,10 +21,7 @@ STRUCT: fsid
TYPEDEF: fsid __fsid_t
TYPEDEF: fsid fsid_t
<< os {
{ linux [ "unix.stat.linux" require ] }
{ macosx [ "unix.stat.macosx" require ] }
} case >>
<< "unix.stat." os name>> append require >>
: file-status ( pathname -- stat )
\ stat <struct> [ [ stat-func ] unix-system-call drop ] keep ;

View File

@ -1,9 +1,6 @@
! Copyright (C) 2008 Doug Coleman.
! See http://factorcode.org/license.txt for BSD license.
USING: combinators system vocabs ;
USING: accessors sequences system vocabs ;
IN: unix.statvfs
os {
{ linux [ "unix.statvfs.linux" require ] }
{ macosx [ "unix.statvfs.macosx" require ] }
} case
"unix.statvfs." os name>> append require

View File

@ -1,4 +1,5 @@
USING: kernel system alien.c-types alien.syntax combinators vocabs ;
USING: accessors alien.c-types alien.syntax system vocabs ;
FROM: sequences => append ;
IN: unix.types
TYPEDEF: char int8_t
@ -44,7 +45,4 @@ C-TYPE: rlimit
C-TYPE: rusage
C-TYPE: sockaddr
os {
{ linux [ "unix.types.linux" require ] }
{ macosx [ "unix.types.macosx" require ] }
} case
"unix.types." os name>> append require

View File

@ -134,7 +134,4 @@ ERROR: no-such-user obj ;
: user-home ( name/uid -- path )
dup user-passwd [ nip dir>> ] [ no-such-user ] if* ;
os {
{ [ dup macosx? ] [ drop "unix.users.macosx" require ] }
{ [ dup linux? ] [ drop ] }
} cond
os macosx? [ "unix.users.macosx" require ] when

View File

@ -8,8 +8,8 @@ IN: io.files.trash
HOOK: send-to-trash os ( path -- )
{
{ [ os macosx? ] [ "io.files.trash.macosx" ] }
{ [ os unix? ] [ "io.files.trash.unix" ] }
{ [ os windows? ] [ "io.files.trash.windows" ] }
{ [ os windows? ] [ "io.files.trash.windows" ] }
{ [ os macosx? ] [ "io.files.trash.macosx" ] }
{ [ os unix? ] [ "io.files.trash.unix" ] }
} cond require

View File

@ -6,9 +6,8 @@ IN: time
HOOK: set-time os ( timestamp -- )
HOOK: adjust-time-monotonic os ( timestamp -- seconds )
os {
{ [ dup macosx? ] [ drop "time.macosx" require ] }
{ [ dup windows? ] [ drop "time.windows" require ] }
{ [ dup unix? ] [ drop "time.unix" require ] }
[ drop ]
} cond
{
{ [ os windows? ] [ "time.windows" ] }
{ [ os macosx? ] [ "time.macosx" ] }
{ [ os unix? ] [ "time.unix" ] }
} cond require