enum Mirror.AncestorRepresentation Representation of ancestor classes. A CustomReflectable class can control how its mirror will represent ancestor classes by initializing the mirror with a AncestorRepresentation. This setting has no effect on mirrors reflecting value type instances. Import import Swift Cases case generated Generate a default mirror for all ancestor classes. This case is the default. Note: This option generates default mirrors even for ancestor classes that may implement CustomReflectable's customMirror requirement. To avoid dropping an ancestor class customization, an override of customMirror should pass ancestorRepresentation: .Customized(super.customMirror) when initializing its Mirror. Declaration case customized(() -> Mirror) Use the nearest ancestor's implementation of customMirror to create a mirror for that ancestor. Other classes derived from such an ancestor are given a default mirror. The payload for this option should always be "{ super.customMirror }": var customMirror: Mirror { return Mirror( self, children: ["someProperty": self.someProperty], ancestorRepresentation: .Customized({ super.customMirror })) // <== } Declaration case suppressed Suppress the representation of all ancestor classes. The resulting Mirror's superclassMirror is nil. Declaration