# Module Perms.Export

    module Export: sig .. end

    type read = Perms.Read.t

We don't expose `bin_io` for `write` due to a naming conflict with the functions exported by `bin_io` for `read_write`. If you want `bin_io` for `write`, use `Write.t`.

    type write = Perms.Write.t

    type immutable = Perms.Immutable.t

    type read_write = Perms.Read_write.t

    type 'a perms = 'a Perms.Upper_bound.t

    val read_of_sexp : Sexplib.Sexp.t -> read

    val sexp_of_read : read -> Sexplib.Sexp.t

    val compare_read : read -> read -> int

    val bin_read : read Bin_prot.Type_class.t

    val bin_read_read : read Bin_prot.Read.reader

    val __bin_read_read__ : (int -> read) Bin_prot.Read.reader

    val bin_reader_read : read Bin_prot.Type_class.reader

    val bin_size_read : read Bin_prot.Size.sizer

    val bin_write_read : read Bin_prot.Write.writer

    val bin_writer_read : read Bin_prot.Type_class.writer

    val write_of_sexp : Sexplib.Sexp.t -> write

    val sexp_of_write : write -> Sexplib.Sexp.t

    val compare_write : write -> write -> int

    val immutable_of_sexp : Sexplib.Sexp.t -> immutable

    val sexp_of_immutable : immutable -> Sexplib.Sexp.t

    val compare_immutable : immutable -> immutable -> int

    val bin_immutable : immutable Bin_prot.Type_class.t

    val bin_read_immutable : immutable Bin_prot.Read.reader

    val __bin_read_immutable__ : (int -> immutable) Bin_prot.Read.reader

    val bin_reader_immutable : immutable Bin_prot.Type_class.reader

    val bin_size_immutable : immutable Bin_prot.Size.sizer

    val bin_write_immutable : immutable Bin_prot.Write.writer

    val bin_writer_immutable : immutable Bin_prot.Type_class.writer

    val read_write_of_sexp : Sexplib.Sexp.t -> read_write

    val sexp_of_read_write : read_write -> Sexplib.Sexp.t

    val compare_read_write : read_write -> read_write -> int

    val bin_read_write : read_write Bin_prot.Type_class.t

    val bin_read_read_write : read_write Bin_prot.Read.reader

    val __bin_read_read_write__ : (int -> read_write) Bin_prot.Read.reader

    val bin_reader_read_write : read_write Bin_prot.Type_class.reader

    val bin_size_read_write : read_write Bin_prot.Size.sizer

    val bin_write_read_write : read_write Bin_prot.Write.writer

    val bin_writer_read_write : read_write Bin_prot.Type_class.writer

    val perms_of_sexp : (Sexplib.Sexp.t -> 'a) -> Sexplib.Sexp.t -> 'a perms

    val sexp_of_perms : ('a -> Sexplib.Sexp.t) -> 'a perms -> Sexplib.Sexp.t

    val compare_perms : ('a -> 'a -> int) -> 'a perms -> 'a perms -> int

    val bin_perms : 'a Bin_prot.Type_class.t -> 'a perms Bin_prot.Type_class.t

    val bin_read_perms : 'a Bin_prot.Read.reader -> 'a perms Bin_prot.Read.reader

    val __bin_read_perms__ : 'a Bin_prot.Read.reader ->
           (int -> 'a perms) Bin_prot.Read.reader

    val bin_reader_perms : 'a Bin_prot.Type_class.reader ->
           'a perms Bin_prot.Type_class.reader

    val bin_size_perms : 'a Bin_prot.Size.sizer -> 'a perms Bin_prot.Size.sizer

    val bin_write_perms : 'a Bin_prot.Write.writer -> 'a perms Bin_prot.Write.writer

    val bin_writer_perms : 'a Bin_prot.Type_class.writer ->
           'a perms Bin_prot.Type_class.writer