Type Erasure in Swift

When using Swift protocols, it is sometimes useful to declare associated types as part of their definition. This allows us to give placeholder names to types that are used as part of the protocol. However, one issue we encounter when doing this is that the protocol cannot be used as a concrete type. Type erasure is one way to get around this limitation, and in this post Chris shows us how.