Unix.LargeFile

Section: OCaml library (3)
Updated: 2009-07-27
Index Return to Main Contents
 

NAME

Unix.LargeFile - File operations on large files.  

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