Module Tjr_lib.Tjr_file

Very tiny file utilities

Types

type fds_t =
| F
| D
| S
| O

f-or-d-or-symlink-or-other

module Slash_operator : sig ... end

File input and output

module File_read_write : sig ... end
include File_read_write
val read_file : string -> string
val write_string_to_file : fn:string -> string -> unit
val read_file_as_line_list : string -> string list

Filenames

module Filenames : sig ... end
include Filenames.Export
val basename : string -> string
val sanitize : string -> string
val dirname : string -> string

Commands

module Commands : sig ... end
include Commands
val readdir : ?⁠dir:string -> unit -> string list
val rename : string -> string -> unit
val stat : Filenames.fn -> fds_t option
val lstat : Filenames.fn -> fds_t option
val can_follow : Filenames.fn -> bool
val cwd : unit -> unit -> string
val cd : string -> unit
val file_exists : Filenames.fn -> bool
val fd_from_file : fn:string -> create:bool -> init:bool -> Unix.file_descr

Get a file descriptor corresponding to a file. Possibly create the file, and init it (truncate it to 0). FIXME move elsewhere?

Permissions

module Perm = FileUtil
module Internal : sig ... end
include Internal
val no_perm : Perm.base_permission
val rw : Perm.base_permission
val no_perm : Perm.permission
val default_create_perm : int

Extra/derived operations

module Extra : sig ... end
module Export : sig ... end