sig
  type limit = Limit of int64 | Infinity
  type t = { cur : Unix.RLimit.limit; max : Unix.RLimit.limit; }
  type resource =
      [ `Core_file_size
      | `Cpu_seconds
      | `Data_segment
      | `File_size
      | `Num_file_descriptors
      | `Stack
      | `Virtual_memory ]
  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 resource_of_sexp__ : Sexplib.Sexp.t -> Unix.RLimit.resource
  val sexp_of_resource : Unix.RLimit.resource -> Sexplib.Sexp.t
end