Module

Module Unix.LargeFile

Documentation

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

val truncate : string -> int64 -> unit

val 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 *) }

val stat : string -> stats

val lstat : string -> stats

val fstat : Unix.file_descr -> stats