> On Dec 5, 2017, at 2:28 PM, Douglas Gregor via swift-dev > <swift-dev@swift.org> wrote: > > To perform that mapping from a mangled type in a conditional requirement to > type metadata, we effectively need an operation to take a mangled type name > and turn it into a type metadata pointer. This is something we could surface > in the Swift standard library/runtime as, e.g., > > func type(named: String) -> Any.Type? > > to take a mangled type name and try to get the type metadata for it. From > there, one can query protocol conformances that (say) allow one to construct > instances of the arbitrarily-named type. Think of it as NSClassFromString for > any type in the Swift language, including specializations of generic types.
It's worth noting here that the standard library already provides a limited `_typeByName(_:)` function for Corelibs Foundation to use. That function will presumably become part of the ABI unless we design a public version in Swift 5. -- Brent Royal-Gordon Architechies
_______________________________________________ swift-dev mailing list swift-dev@swift.org https://lists.swift.org/mailman/listinfo/swift-dev