batteries
  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

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 : file_descr -> int64 -> seek_command -> int64
val truncate : string -> int64 -> unit
val ftruncate : file_descr -> int64 -> unit
type stats = Unix.LargeFile.stats = {
  1. st_dev : int;
    (*

    Device number

    *)
  2. st_ino : int;
    (*

    Inode number

    *)
  3. st_kind : file_kind;
    (*

    Kind of the file

    *)
  4. st_perm : file_perm;
    (*

    Access rights

    *)
  5. st_uid : int;
    (*

    User id of the owner

    *)
  6. st_gid : int;
    (*

    Group ID of the file's group

    *)
  7. st_rdev : int;
    (*

    Device minor number

    *)
  8. st_size : int64;
    (*

    Size in bytes

    *)
  9. st_atime : float;
    (*

    Last access time

    *)
  10. st_mtime : float;
    (*

    Last modification time

    *)
  11. st_ctime : float;
    (*

    Last status change time

    *)
}
val stat : string -> stats
val lstat : string -> stats
val fstat : file_descr -> stats