Shape.UidA Uid.t is associated to every declaration in signatures and implementations. They uniquely identify bindings in the program. When associated with these bindings' locations they are useful to external tools when trying to jump to an identifier's declaration or definition. They are stored to that effect in the uid_to_decl table of cmt files.
val mk : current_unit:string -> tval of_compilation_unit_id : Ident.t -> tval of_predef_id : Ident.t -> tval internal_not_actually_unique : tval for_actual_declaration : t -> bool