14 #include "llvm/Support/Debug.h" 
   15 #include "llvm/Support/raw_ostream.h" 
   17 #define DEBUG_TYPE "interfaces" 
   21 void detail::InterfaceMap::insert(
TypeID interfaceId, 
void *conceptImpl) {
 
   24       llvm::lower_bound(interfaces, interfaceId, [](
const auto &it, 
TypeID id) {
 
   25         return compare(it.first, 
id);
 
   27   if (it != interfaces.end() && it->first == interfaceId) {
 
   28     LLVM_DEBUG(llvm::dbgs() << 
"Ignoring repeated interface registration\n");
 
   32   interfaces.insert(it, {interfaceId, conceptImpl});
 
This class provides an efficient unique identifier for a specific C++ type.
Include the generated interface declarations.