combinators system io.backend accessors alien.c-types
io.encodings.utf8 alien.strings unix.types io.files.unix
io.files io.files.info unix.statvfs.netbsd unix.getfsstat.netbsd arrays
--grouping sequences io.encodings.utf8 classes.struct
++grouping sequences io.encodings.utf8 classes.struct struct-arrays
io.files.info.unix ;
IN: io.files.info.unix.netbsd
M: netbsd file-systems ( -- array )
f 0 0 getvfsstat dup io-error
- \ statvfs <c-array> dup dup length 0 getvfsstat io-error
- \ statvfs heap-size group
- [ f_mntonname>> utf8 alien>string file-system-info ] map ;
- \ statvfs <c-type-array>
++ \ statvfs <struct-array>
+ [ dup length 0 getvfsstat io-error ]
+ [ [ f_mntonname>> utf8 alien>string file-system-info ] map ] bi ;
combinators io.backend io.files io.files.info io.files.unix kernel math
sequences system unix unix.getfsstat.openbsd grouping
unix.statfs.openbsd unix.statvfs.openbsd unix.types
--arrays io.files.info.unix classes.struct ;
++arrays io.files.info.unix classes.struct struct-arrays ;
IN: io.files.unix.openbsd
TUPLE: freebsd-file-system-info < unix-file-system-info
M: openbsd file-systems ( -- seq )
f 0 0 getfsstat dup io-error
- \ statfs <c-array> dup dup length 0 getfsstat io-error
- \ statfs heap-size group
- [ f_mntonname>> alien>native-string file-system-info ] map ;
+ \ statfs <c-type-array>
+ [ dup length 0 getvfsstat io-error ]
+ [ [ f_mntonname>> utf8 alien>string file-system-info ] map ] bi ;