module LargeFile:sig
..end
File operations on large files.
This sub-module provides 64-bit variants of the functions
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
.
val lseek : BatUnix.file_descr -> int64 -> BatUnix.seek_command -> int64
val truncate : string -> int64 -> unit
val ftruncate : BatUnix.file_descr -> int64 -> unit
typestats =
Unix.LargeFile.stats
= {
|
st_dev : |
(* | Device number | *) |
|
st_ino : |
(* | Inode number | *) |
|
st_kind : |
(* | Kind of the file | *) |
|
st_perm : |
(* | Access rights | *) |
|
st_nlink : |
(* | Number of links | *) |
|
st_uid : |
(* | User id of the owner | *) |
|
st_gid : |
(* | Group ID of the file's group | *) |
|
st_rdev : |
(* | Device minor number | *) |
|
st_size : |
(* | Size in bytes | *) |
|
st_atime : |
(* | Last access time | *) |
|
st_mtime : |
(* | Last modification time | *) |
|
st_ctime : |
(* | Last status change time | *) |
}
val stat : string -> stats
val lstat : string -> stats
val fstat : BatUnix.file_descr -> stats