Import Upstream version 20180207
[hcoop/debian/mlton.git] / runtime / basis / Posix / FileSys / Stat.c
1 #include "platform.h"
2
3 static struct stat Posix_FileSys_Stat_statbuf;
4
5 C_Dev_t Posix_FileSys_Stat_getDev (void) {
6 return Posix_FileSys_Stat_statbuf.st_dev;
7 }
8
9 C_INo_t Posix_FileSys_Stat_getINo (void) {
10 return Posix_FileSys_Stat_statbuf.st_ino;
11 }
12
13 C_Mode_t Posix_FileSys_Stat_getMode (void) {
14 return Posix_FileSys_Stat_statbuf.st_mode;
15 }
16
17 C_NLink_t Posix_FileSys_Stat_getNLink (void) {
18 return Posix_FileSys_Stat_statbuf.st_nlink;
19 }
20
21 C_UId_t Posix_FileSys_Stat_getUId (void) {
22 return Posix_FileSys_Stat_statbuf.st_uid;
23 }
24
25 C_GId_t Posix_FileSys_Stat_getGId (void) {
26 return Posix_FileSys_Stat_statbuf.st_gid;
27 }
28
29 C_Dev_t Posix_FileSys_Stat_getRDev (void) {
30 return Posix_FileSys_Stat_statbuf.st_rdev;
31 }
32
33 C_Off_t Posix_FileSys_Stat_getSize (void) {
34 return Posix_FileSys_Stat_statbuf.st_size;
35 }
36
37 C_Time_t Posix_FileSys_Stat_getATime (void) {
38 return Posix_FileSys_Stat_statbuf.st_atime;
39 }
40
41 C_Time_t Posix_FileSys_Stat_getMTime (void) {
42 return Posix_FileSys_Stat_statbuf.st_mtime;
43 }
44
45 C_Time_t Posix_FileSys_Stat_getCTime (void) {
46 return Posix_FileSys_Stat_statbuf.st_ctime;
47 }
48
49 /*
50 C_BlkSize_t Posix_FileSys_Stat_getBlkSize (void) {
51 return Posix_FileSys_Stat_statbuf.st_blksize;
52 }
53
54 C_BlkCnt_t Posix_FileSys_Stat_getBlkCnt (void) {
55 return Posix_FileSys_Stat_statbuf.st_blocks;
56 }
57 */
58
59 C_Errno_t(C_Int_t) Posix_FileSys_Stat_fstat (C_Fd_t f) {
60 return fstat (f, &Posix_FileSys_Stat_statbuf);
61 }
62
63 C_Errno_t(C_Int_t) Posix_FileSys_Stat_lstat (NullString8_t f) {
64 return lstat ((const char*)f, &Posix_FileSys_Stat_statbuf);
65 }
66
67 C_Errno_t(C_Int_t) Posix_FileSys_Stat_stat (NullString8_t f) {
68 return stat ((const char*)f, &Posix_FileSys_Stat_statbuf);
69 }