# Functor Flags_intf.Flags.Make

    module Make: functor (M : Make_arg) -> S  with type t = Int63.t

`Flags.Make` builds a new flags module. If there is an error in the `known` flags, it behaves as per `on_error`.

We expose `type t = int` in the result of `Flags.Make` so that one can easily use flag constants as values of the flag type without having to coerce them. It is typical to hide the `t = int` in another signature `S`.

Parameters:

`M` | : | `Make_arg`

    type t

    val typerep_of_t : t Typerep_lib.Std.Typerep.t

    val typename_of_t : t Typerep_lib.Std.Typename.t

    include Comparable.S

consistent with subset

    val of_int : int -> t

    val to_int_exn : t -> int

    val empty : t

    val (+) : t -> t -> t

set union, bitwise or

    val (-) : t -> t -> t

set difference

    val intersect : t -> t -> t

bitwise and

    val complement : t -> t

bitwise not

    val is_empty : t -> bool

    val do_intersect : t -> t -> bool

    val are_disjoint : t -> t -> bool

    val t_of_sexp : Sexplib.Sexp.t -> t

    val sexp_of_t : t -> Sexplib.Sexp.t

consistent with subset
set union, bitwise or
set difference
bitwise and
bitwise not