+let disambiguate_thing =
+ let profiler = CicUtil.profile "disambiguate_thing" in
+ fun ~aliases ~universe
+ ~(f:?fresh_instances:bool ->
+ aliases:DisambiguateTypes.environment ->
+ universe:DisambiguateTypes.multiple_environment option ->
+ 'a -> 'b)
+ ~(set_aliases: DisambiguateTypes.environment -> 'b -> 'b)
+ (thing: 'a)
+ -> profiler.CicUtil.profile
+ (disambiguate_thing ~aliases ~universe ~f ~set_aliases) thing
+
+let disambiguate_thing ~aliases ~universe
+ ~(f:?fresh_instances:bool ->
+ aliases:DisambiguateTypes.environment ->
+ universe:DisambiguateTypes.multiple_environment option ->
+ 'a -> 'b)
+ ~(set_aliases: DisambiguateTypes.environment -> 'b -> 'b)
+ (thing: 'a)
+=
+ Obj.magic disambiguate_thing ~aliases ~universe ~f ~set_aliases thing
+