sig
  type t = {
    mutable fd_enabled : bool;
    fd_name : string;
    fd_description : string;
    fd_extraopt : (string * Arg.spec * string) list;
    fd_doit : Cil.file -> unit;
    fd_post_check : bool;
  }
  val register : Feature.t -> unit
  val list_registered : unit -> Feature.t list
  val registered : string -> bool
  val find : string -> Feature.t
  val enable : string -> unit
  val enabled : string -> bool
  val init : unit -> unit
  val loadWithDeps : string -> unit
  val loadFromArgv : string -> unit
  val loadFromEnv : string -> string list -> unit
end