Module Unix.LargeFile

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 : Unix.file_descr -> int64 -> Unix.seek_command -> int64
See Unix.lseek.
val truncate : string -> int64 -> unit
See Unix.truncate.
val ftruncate : Unix.file_descr -> int64 -> unit
See Unix.ftruncate.
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
*)
}
val stat : string -> stats
val lstat : string -> stats
val fstat : Unix.file_descr -> stats