sig
  type limit = Limit of int64 | Infinity
  type t = { cur : Unix.RLimit.limit; max : Unix.RLimit.limit; }
  type resource
  val core_file_size : Unix.RLimit.resource
  val cpu_seconds : Unix.RLimit.resource
  val data_segment : Unix.RLimit.resource
  val file_size : Unix.RLimit.resource
  val num_file_descriptors : Unix.RLimit.resource
  val stack : Unix.RLimit.resource
  val virtual_memory : Unix.RLimit.resource
  val nice : Unix.RLimit.resource Or_error.t
  val get : Unix.RLimit.resource -> Unix.RLimit.t
  val set : Unix.RLimit.resource -> Unix.RLimit.t -> unit
  val limit_of_sexp : Sexplib.Sexp.t -> Unix.RLimit.limit
  val sexp_of_limit : Unix.RLimit.limit -> Sexplib.Sexp.t
  val t_of_sexp : Sexplib.Sexp.t -> Unix.RLimit.t
  val sexp_of_t : Unix.RLimit.t -> Sexplib.Sexp.t
  val resource_of_sexp : Sexplib.Sexp.t -> Unix.RLimit.resource
  val sexp_of_resource : Unix.RLimit.resource -> Sexplib.Sexp.t
end