diff --git a/Sources/Knit/Module/DependencyBuilder.swift b/Sources/Knit/Module/DependencyBuilder.swift index 342e830f..2fa4d462 100644 --- a/Sources/Knit/Module/DependencyBuilder.swift +++ b/Sources/Knit/Module/DependencyBuilder.swift @@ -41,19 +41,19 @@ final class DependencyBuilder { let toAssemble = assemblyCache.toAssemble // Instantiate all types - var createdTypes = Set() + var createdTypes = Set() for ref in toAssemble { guard !self.isRegisteredInParent(ref) else { continue } let assembly = try instantiate(moduleType: ref.type) // Ensure the same assembly isn't added twice - let typeName = String(describing: type(of: assembly)) - guard !createdTypes.contains(typeName) else { + let typeId = ObjectIdentifier(type(of: assembly)) + guard !createdTypes.contains(typeId) else { continue } assemblies.append(assembly) - createdTypes.insert(typeName) + createdTypes.insert(typeId) } }