What's .self, .Type and .Protocol? Understanding Swift Metatypes

Bruno Rocha digs in to Swift metatypes. He first explains what a metatype is, before highlighting the differences between dynamic and static metatypes.