sig   val get_selection_context : ?is_set:bool -> unit -> State_selection.t   val get_selection : ?is_set:bool -> unit -> State_selection.t   val get_reset_selection : ?is_set:bool -> unit -> State_selection.t   module Make :     functor       (P : sig val shortname : string end) (X : sig                                                   type t                                                   val ty : t Type.t                                                   val name : string                                                   val descr : t Descr.t                                                   val packed_descr :                                                     Structural_descr.pack                                                   val reprs : t list                                                   val equal : t -> t -> bool                                                   val compare : t -> t -> int                                                   val hash : t -> int                                                   val pretty_code :                                                     Format.formatter ->                                                     t -> unit                                                   val internal_pretty_code :                                                     Type.precedence ->                                                     Format.formatter ->                                                     t -> unit                                                   val pretty :                                                     Format.formatter ->                                                     t -> unit                                                   val varname : t -> string                                                   val mem_project :                                                     (Project_skeleton.t ->                                                      bool) ->                                                     t -> bool                                                   val copy : t -> t                                                   val default : unit -> t                                                   val option_name : string                                                   val functor_name : string                                                 end->       sig         type t = X.t         val set : t -> unit         val add_set_hook : (t -> t -> unit) -> unit         val add_update_hook : (t -> t -> unit) -> unit         val get : unit -> t         val clear : unit -> unit         val is_default : unit -> bool         val option_name : string         val print_help : Format.formatter -> unit         val self : State.t         val name : string         val mark_as_computed : ?project:Project.t -> unit -> unit         val is_computed : ?project:Project.t -> unit -> bool         module Datatype : Datatype.S         val add_hook_on_update : (Datatype.t -> unit) -> unit         val howto_marshal : (Datatype.t -> 'a) -> ('-> Datatype.t) -> unit         val equal : t -> t -> bool         val add_aliases : string list -> unit         val is_set : unit -> bool         val unsafe_set : t -> unit         module Is_set : State_builder.S         val group : Cmdline.Group.t         val stage : Cmdline.stage         val is_visible : bool         val is_dynamic : bool         val register_dynamic :           string ->           'arg Type.t -> 'ret Type.t -> ('arg -> 'ret) -> 'arg -> 'ret         val gen_journalized :           string -> 'arg Type.t -> ('arg -> unit) -> 'arg -> unit       end   val collections : State.Set.t Pervasives.ref end