sig
  type flag = IN | OUT | PRI | ERR | HUP | ET | ONESHOT
  val bin_size_flag : Extended_linux.Epoll.flag Bin_prot.Size.sizer
  val bin_write_flag : Extended_linux.Epoll.flag Bin_prot.Write_ml.writer
  val bin_write_flag_ :
    Extended_linux.Epoll.flag Bin_prot.Unsafe_write_c.writer
  val bin_writer_flag : Extended_linux.Epoll.flag Bin_prot.Type_class.writer
  val bin_read_flag : Extended_linux.Epoll.flag Bin_prot.Read_ml.reader
  val bin_read_flag_ :
    Extended_linux.Epoll.flag Bin_prot.Unsafe_read_c.reader
  val bin_read_flag__ :
    (int -> Extended_linux.Epoll.flag) Bin_prot.Unsafe_read_c.reader
  val bin_reader_flag : Extended_linux.Epoll.flag Bin_prot.Type_class.reader
  val bin_flag : Extended_linux.Epoll.flag Bin_prot.Type_class.t
  val sexp_of_flag : Extended_linux.Epoll.flag -> Sexplib.Sexp.t
  val flag_of_sexp : Sexplib.Sexp.t -> Extended_linux.Epoll.flag
  type flags
  val make_flags :
    Extended_linux.Epoll.flag array -> Extended_linux.Epoll.flags
  val get_flags :
    Extended_linux.Epoll.flags -> Extended_linux.Epoll.flag array
  val has_in : Extended_linux.Epoll.flags -> bool
  val has_out : Extended_linux.Epoll.flags -> bool
  val has_pri : Extended_linux.Epoll.flags -> bool
  val has_err : Extended_linux.Epoll.flags -> bool
  val has_hup : Extended_linux.Epoll.flags -> bool
  val has_et : Extended_linux.Epoll.flags -> bool
  val has_oneshot : Extended_linux.Epoll.flags -> bool
  val flag_to_string : Extended_linux.Epoll.flag -> string
  val create : int -> Core.Std.Unix.file_descr
  val add :
    epfd:Core.Std.Unix.file_descr ->
    fd:Core.Std.Unix.file_descr -> Extended_linux.Epoll.flags -> unit
  val modify :
    epfd:Core.Std.Unix.file_descr ->
    fd:Core.Std.Unix.file_descr -> Extended_linux.Epoll.flags -> unit
  val del :
    epfd:Core.Std.Unix.file_descr -> fd:Core.Std.Unix.file_descr -> unit
  val wait :
    Core.Std.Unix.file_descr ->
    maxevents:int ->
    timeout:int ->
    (Core.Std.Unix.file_descr * Extended_linux.Epoll.flags) array
end