sig   type t = BExec | BExecLib | BLib | BObj | BDoc   val register :     BaseBuilt.t ->     OASISTypes.name -> OASISTypes.host_filename list list -> unit   val unregister : BaseBuilt.t -> OASISTypes.name -> unit   val fold :     BaseBuilt.t ->     OASISTypes.name -> ('-> OASISTypes.host_filename -> 'a) -> '-> 'a   val is_built : BaseBuilt.t -> OASISTypes.name -> bool   val of_executable :     (OASISTypes.unix_filename -> OASISTypes.host_filename) ->     OASISTypes.common_section * OASISTypes.build_section *     OASISTypes.executable ->     (BaseBuilt.t * OASISTypes.name * OASISTypes.host_filename list list) list *     OASISTypes.unix_filename * OASISTypes.unix_filename option   val of_library :     (OASISTypes.unix_filename -> OASISTypes.host_filename) ->     OASISTypes.common_section * OASISTypes.build_section * OASISTypes.library ->     (BaseBuilt.t * OASISTypes.name * OASISTypes.host_filename list list) list *     OASISTypes.unix_filename list list   val of_object :     (OASISTypes.unix_filename -> OASISTypes.host_filename) ->     OASISTypes.common_section * OASISTypes.build_section * OASISTypes.object_ ->     (BaseBuilt.t * OASISTypes.name * OASISTypes.host_filename list list) list *     OASISTypes.unix_filename list list end