Module UnixLabels.LargeFile

module LargeFile: sig .. end
File operations on large files. This sub-module provides 64-bit variants of the functions UnixLabels.lseek (for positioning a file descriptor), UnixLabels.truncate and UnixLabels.ftruncate (for changing the size of a file), and UnixLabels.stat, UnixLabels.lstat and UnixLabels.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 : UnixLabels.file_descr -> int64 -> mode:UnixLabels.seek_command -> int64
val truncate : string -> len:int64 -> unit
val ftruncate : UnixLabels.file_descr -> len:int64 -> unit
type stats = Unix.LargeFile.stats = {
   st_dev : int; (*
Device number
*)
   st_ino : int; (*
Inode number
*)
   st_kind : UnixLabels.file_kind; (*
Kind of the file
*)
   st_perm : UnixLabels.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
*)
}
val stat : string -> stats
val lstat : string -> stats
val fstat : UnixLabels.file_descr -> stats