module LargeFile: sig .. end
Unix.lseek
(for positioning a file descriptor),
Unix.truncate
and Unix.ftruncate
(for changing the size of a file),
and Unix.stat
, Unix.lstat
and Unix.fstat
(for obtaining
information on files). These alternate functions represent
positions and sizes by 64-bit integers (type int64
) instead of
regular integers (type int
), thus allowing operating on files
whose sizes are greater than max_int
.let lseek: (Unix.file_descr, int64, Unix.seek_command) => int64;
let truncate: (string, int64) => unit;
let ftruncate: (Unix.file_descr, int64) => unit;
type stats = {
|
st_dev : int; |
(* |
Device number
| *) |
|
st_ino : int; |
(* |
Inode number
| *) |
|
st_kind : Unix.file_kind; |
(* |
Kind of the file
| *) |
|
st_perm : Unix.file_perm; |
(* |
Access rights
| *) |
|
st_nlink : int; |
(* |
Number of links
| *) |
|
st_uid : int; |
(* |
User id of the owner
| *) |
|
st_gid : int; |
(* |
Group ID of the file's group
| *) |
|
st_rdev : int; |
(* |
Device minor number
| *) |
|
st_size : int64; |
(* |
Size in bytes
| *) |
|
st_atime : float; |
(* |
Last access time
| *) |
|
st_mtime : float; |
(* |
Last modification time
| *) |
|
st_ctime : float; |
(* |
Last status change time
| *) |
let stat: string => stats;
let lstat: string => stats;
let fstat: Unix.file_descr => stats;