sig
type elt = architecture_name
type id = architecture_id
type t
val create : unit -> t
val register : t -> elt -> id
val search : t -> elt -> id
val find : t -> id -> elt
val compare_id : id -> id -> int
val scribe_id : 'a Conduit.conduit -> 'a -> id -> unit
val io_id : id Io.literate
val iter : t -> (id -> elt -> unit) -> unit
val set_watcher : t -> (id -> elt -> unit) -> unit
end