From 39160d66e3f086a60341c9b6ff8bde8364c79143 Mon Sep 17 00:00:00 2001 From: Doug Coleman <doug.coleman@gmail.com> Date: Mon, 6 Oct 2008 23:02:06 -0500 Subject: [PATCH] add files --- basis/io/unix/files/bsd/bsd.factor | 17 +++++++++++++++++ basis/io/unix/files/bsd/tags.txt | 1 + 2 files changed, 18 insertions(+) create mode 100644 basis/io/unix/files/bsd/bsd.factor create mode 100644 basis/io/unix/files/bsd/tags.txt diff --git a/basis/io/unix/files/bsd/bsd.factor b/basis/io/unix/files/bsd/bsd.factor new file mode 100644 index 0000000000..18e713af2f --- /dev/null +++ b/basis/io/unix/files/bsd/bsd.factor @@ -0,0 +1,17 @@ +! Copyright (C) 2008 Doug Coleman. +! See http://factorcode.org/license.txt for BSD license. +USING: kernel alien.syntax math io.unix.files system +unix.stat accessors combinators calendar.unix ; +IN: io.unix.files.bsd + +TUPLE: bsd-file-info < unix-file-info birth-time flags gen ; + +M: bsd new-file-info ( -- class ) bsd-file-info new ; + +M: bsd stat>file-info ( stat -- file-info ) + [ call-next-method ] keep + { + [ stat-st_flags >>flags ] + [ stat-st_gen >>gen ] + [ stat-st_birthtimespec timespec>unix-time >>birth-time ] + } cleave ; diff --git a/basis/io/unix/files/bsd/tags.txt b/basis/io/unix/files/bsd/tags.txt new file mode 100644 index 0000000000..6bf68304bb --- /dev/null +++ b/basis/io/unix/files/bsd/tags.txt @@ -0,0 +1 @@ +unportable