Documentation Archive Developer
Search

QuartzCore Changes for Swift

QuartzCore

Removed NSObject.actionForLayer(_: CALayer, forKey: String) -> CAAction?
Removed NSObject.animationDidStart(_: CAAnimation)
Removed NSObject.animationDidStop(_: CAAnimation, finished: Bool)
Removed NSObject.displayLayer(_: CALayer)
Removed NSObject.drawLayer(_: CALayer, inContext: CGContext)
Removed NSObject.layoutSublayersOfLayer(_: CALayer)
Modified CAAction
Declaration
From
protocol CAAction {
    func runActionForKey(_ event: String, object anObject: AnyObject, arguments dict: [NSObject : AnyObject]?)
}
To
protocol CAAction {
    func run(forKey event: String, object anObject: Any, arguments dict: [AnyHashable : Any]?)
}

Declaration
From
func runActionForKey(_ event: String, object anObject: AnyObject, arguments dict: [NSObject : AnyObject]?)
To
func run(forKey event: String, object anObject: Any, arguments dict: [AnyHashable : Any]?)

Modified CAAnimation
DeclarationProtocolsIntroduction
From
class CAAnimation : NSObject, NSCoding, NSCopying, CAMediaTiming, CAAction {
    convenience init()
    class func animation() -> Self
    class func defaultValueForKey(_ key: String) -> AnyObject?
    func shouldArchiveValueForKey(_ key: String) -> Bool
    var timingFunction: CAMediaTimingFunction?
    var delegate: AnyObject?
    var removedOnCompletion: Bool
}
extension CAAnimation {
    var usesSceneTimeBase: Bool
    var fadeInDuration: CGFloat
    var fadeOutDuration: CGFloat
    var animationEvents: [SCNAnimationEvent]?
}
CAAction, CAMediaTiming, NSCoding, NSCopyingiOS 8.0
To
class CAAnimation : NSObject, NSCoding, NSCopying, CAMediaTiming, CAAction {
    convenience init()
    class func animation() -> Self
    class func defaultValue(forKey key: String) -> Any?
    func shouldArchiveValue(forKey key: String) -> Bool
    var timingFunction: CAMediaTimingFunction?
    var delegate: CAAnimationDelegate?
    var isRemovedOnCompletion: Bool
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension CAAnimation : CVarArg {
}
extension CAAnimation : Equatable, Hashable {
    var hashValue: Int { get }
}
extension CAAnimation {
    var usesSceneTimeBase: Bool
    var fadeInDuration: CGFloat
    var fadeOutDuration: CGFloat
    var animationEvents: [SCNAnimationEvent]?
}
CAAction, CAMediaTiming, CVarArg, Equatable, Hashable, NSCoding, NSCopyingiOS 2.0

Declaration
From
class func defaultValueForKey(_ key: String) -> AnyObject?
To
class func defaultValue(forKey key: String) -> Any?

Declaration
From
var delegate: AnyObject?
To
var delegate: CAAnimationDelegate?

Declaration
From
var removedOnCompletion: Bool
To
var isRemovedOnCompletion: Bool

Declaration
From
func shouldArchiveValueForKey(_ key: String) -> Bool
To
func shouldArchiveValue(forKey key: String) -> Bool

Introduction
FromiOS 8.0
ToiOS 2.0

DeclarationIntroduction
From
class CABasicAnimation : CAPropertyAnimation {
    var fromValue: AnyObject?
    var toValue: AnyObject?
    var byValue: AnyObject?
}
iOS 8.0
To
class CABasicAnimation : CAPropertyAnimation {
    var fromValue: Any?
    var toValue: Any?
    var byValue: Any?
}
iOS 2.0

Declaration
From
var byValue: AnyObject?
To
var byValue: Any?

Declaration
From
var fromValue: AnyObject?
To
var fromValue: Any?

Declaration
From
var toValue: AnyObject?
To
var toValue: Any?

Modified CADisplayLink
DeclarationProtocolsIntroduction
From
class CADisplayLink : NSObject {
     init(target target: AnyObject, selector sel: Selector)
    class func displayLinkWithTarget(_ target: AnyObject, selector sel: Selector) -> CADisplayLink
    func addToRunLoop(_ runloop: NSRunLoop, forMode mode: String)
    func removeFromRunLoop(_ runloop: NSRunLoop, forMode mode: String)
    func invalidate()
    var timestamp: CFTimeInterval { get }
    var duration: CFTimeInterval { get }
    var paused: Bool
    var frameInterval: Int
}
--iOS 8.0
To
class CADisplayLink : NSObject {
     init(target target: Any, selector sel: Selector)
    class func withTarget(_ target: Any, selector sel: Selector) -> CADisplayLink
    func add(to runloop: RunLoop, forMode mode: RunLoopMode)
    func remove(from runloop: RunLoop, forMode mode: RunLoopMode)
    func invalidate()
    var timestamp: CFTimeInterval { get }
    var duration: CFTimeInterval { get }
    var targetTimestamp: CFTimeInterval { get }
    var isPaused: Bool
    var frameInterval: Int
    var preferredFramesPerSecond: Int
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension CADisplayLink : CVarArg {
}
extension CADisplayLink : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, Equatable, HashableiOS 3.1

Declaration
From
func addToRunLoop(_ runloop: NSRunLoop, forMode mode: String)
To
func add(to runloop: RunLoop, forMode mode: RunLoopMode)

Introduction
FromiOS 8.0
ToiOS 3.1

Declaration
From
init(target target: AnyObject, selector sel: Selector)
To
init(target target: Any, selector sel: Selector)

Declaration
From
var paused: Bool
To
var isPaused: Bool

Declaration
From
func removeFromRunLoop(_ runloop: NSRunLoop, forMode mode: String)
To
func remove(from runloop: RunLoop, forMode mode: RunLoopMode)

Modified CAEAGLLayer
DeclarationProtocolsIntroduction
From
class CAEAGLLayer : CALayer, EAGLDrawable {
    var presentsWithTransaction: Bool
}
EAGLDrawableiOS 8.0
To
class CAEAGLLayer : CALayer, EAGLDrawable {
    var presentsWithTransaction: Bool
    func scroll(_ p: CGPoint)
    func scrollRectToVisible(_ r: CGRect)
    var visibleRect: CGRect { get }
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension CAEAGLLayer : CVarArg {
}
extension CAEAGLLayer : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, EAGLDrawable, Equatable, HashableiOS 2.0

DeclarationProtocols
From
struct CAEdgeAntialiasingMask : OptionSetType {
    init(rawValue rawValue: UInt32)
    static var LayerLeftEdge: CAEdgeAntialiasingMask { get }
    static var LayerRightEdge: CAEdgeAntialiasingMask { get }
    static var LayerBottomEdge: CAEdgeAntialiasingMask { get }
    static var LayerTopEdge: CAEdgeAntialiasingMask { get }
}
OptionSetType
To
struct CAEdgeAntialiasingMask : OptionSet {
    init(rawValue rawValue: UInt32)
    static var layerLeftEdge: CAEdgeAntialiasingMask { get }
    static var layerRightEdge: CAEdgeAntialiasingMask { get }
    static var layerBottomEdge: CAEdgeAntialiasingMask { get }
    static var layerTopEdge: CAEdgeAntialiasingMask { get }
    func intersect(_ other: CAEdgeAntialiasingMask) -> CAEdgeAntialiasingMask
    func exclusiveOr(_ other: CAEdgeAntialiasingMask) -> CAEdgeAntialiasingMask
    mutating func unionInPlace(_ other: CAEdgeAntialiasingMask)
    mutating func intersectInPlace(_ other: CAEdgeAntialiasingMask)
    mutating func exclusiveOrInPlace(_ other: CAEdgeAntialiasingMask)
    func isSubsetOf(_ other: CAEdgeAntialiasingMask) -> Bool
    func isDisjointWith(_ other: CAEdgeAntialiasingMask) -> Bool
    func isSupersetOf(_ other: CAEdgeAntialiasingMask) -> Bool
    mutating func subtractInPlace(_ other: CAEdgeAntialiasingMask)
    func isStrictSupersetOf(_ other: CAEdgeAntialiasingMask) -> Bool
    func isStrictSubsetOf(_ other: CAEdgeAntialiasingMask) -> Bool
}
extension CAEdgeAntialiasingMask {
    func union(_ other: CAEdgeAntialiasingMask) -> CAEdgeAntialiasingMask
    func intersection(_ other: CAEdgeAntialiasingMask) -> CAEdgeAntialiasingMask
    func symmetricDifference(_ other: CAEdgeAntialiasingMask) -> CAEdgeAntialiasingMask
}
extension CAEdgeAntialiasingMask {
    func contains(_ member: CAEdgeAntialiasingMask) -> Bool
    mutating func insert(_ newMember: CAEdgeAntialiasingMask) -> (inserted: Bool, memberAfterInsert: CAEdgeAntialiasingMask)
    mutating func remove(_ member: CAEdgeAntialiasingMask) -> CAEdgeAntialiasingMask?
    mutating func update(with newMember: CAEdgeAntialiasingMask) -> CAEdgeAntialiasingMask?
}
extension CAEdgeAntialiasingMask {
    convenience init()
    mutating func formUnion(_ other: CAEdgeAntialiasingMask)
    mutating func formIntersection(_ other: CAEdgeAntialiasingMask)
    mutating func formSymmetricDifference(_ other: CAEdgeAntialiasingMask)
}
extension CAEdgeAntialiasingMask {
    convenience init<S : Sequence where S.Iterator.Element == CAEdgeAntialiasingMask>(_ sequence: S)
    convenience init(arrayLiteral arrayLiteral: CAEdgeAntialiasingMask...)
    mutating func subtract(_ other: CAEdgeAntialiasingMask)
    func isSubset(of other: CAEdgeAntialiasingMask) -> Bool
    func isSuperset(of other: CAEdgeAntialiasingMask) -> Bool
    func isDisjoint(with other: CAEdgeAntialiasingMask) -> Bool
    func subtracting(_ other: CAEdgeAntialiasingMask) -> CAEdgeAntialiasingMask
    var isEmpty: Bool { get }
    func isStrictSuperset(of other: CAEdgeAntialiasingMask) -> Bool
    func isStrictSubset(of other: CAEdgeAntialiasingMask) -> Bool
}
OptionSet

Declaration
From
static var LayerBottomEdge: CAEdgeAntialiasingMask { get }
To
static var layerBottomEdge: CAEdgeAntialiasingMask { get }

Declaration
From
static var LayerLeftEdge: CAEdgeAntialiasingMask { get }
To
static var layerLeftEdge: CAEdgeAntialiasingMask { get }

Declaration
From
static var LayerRightEdge: CAEdgeAntialiasingMask { get }
To
static var layerRightEdge: CAEdgeAntialiasingMask { get }

Declaration
From
static var LayerTopEdge: CAEdgeAntialiasingMask { get }
To
static var layerTopEdge: CAEdgeAntialiasingMask { get }

Modified CAEmitterBehavior
DeclarationProtocolsIntroduction
From
class CAEmitterBehavior : NSObject, NSCoding {
    class func behaviorTypes() -> [String]
     init(type type: String)
    class func behaviorWithType(_ type: String) -> CAEmitterBehavior
    init(type type: String)
    var type: String { get }
    var name: String?
    var enabled: Bool
}
NSCodingiOS 8.0
To
class CAEmitterBehavior : NSObject, NSCoding {
    class func behaviorTypes() -> [String]
     init(type type: String)
    class func withType(_ type: String) -> CAEmitterBehavior
    init(type type: String)
    var type: String { get }
    var name: String?
    var isEnabled: Bool
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension CAEmitterBehavior : CVarArg {
}
extension CAEmitterBehavior : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, Equatable, Hashable, NSCodingiOS 7.0

Modified CAEmitterBehavior.isEnabled
Declaration
From
var enabled: Bool
To
var isEnabled: Bool

Modified CAEmitterCell
DeclarationProtocolsIntroduction
From
class CAEmitterCell : NSObject, NSCoding, CAMediaTiming {
    convenience init()
    class func emitterCell() -> Self
    class func defaultValueForKey(_ key: String) -> AnyObject?
    func shouldArchiveValueForKey(_ key: String) -> Bool
    var name: String?
    var enabled: Bool
    var birthRate: Float
    var lifetime: Float
    var lifetimeRange: Float
    var emissionLatitude: CGFloat
    var emissionLongitude: CGFloat
    var emissionRange: CGFloat
    var velocity: CGFloat
    var velocityRange: CGFloat
    var xAcceleration: CGFloat
    var yAcceleration: CGFloat
    var zAcceleration: CGFloat
    var scale: CGFloat
    var scaleRange: CGFloat
    var scaleSpeed: CGFloat
    var spin: CGFloat
    var spinRange: CGFloat
    var color: CGColor?
    var redRange: Float
    var greenRange: Float
    var blueRange: Float
    var alphaRange: Float
    var redSpeed: Float
    var greenSpeed: Float
    var blueSpeed: Float
    var alphaSpeed: Float
    var contents: AnyObject?
    var contentsRect: CGRect
    var contentsScale: CGFloat
    var minificationFilter: String
    var magnificationFilter: String
    var minificationFilterBias: Float
    var emitterCells: [CAEmitterCell]?
    var style: [NSObject : AnyObject]?
}
CAMediaTiming, NSCodingiOS 8.0
To
class CAEmitterCell : NSObject, NSCoding, CAMediaTiming {
    convenience init()
    class func emitterCell() -> Self
    class func defaultValue(forKey key: String) -> Any?
    func shouldArchiveValue(forKey key: String) -> Bool
    var name: String?
    var isEnabled: Bool
    var birthRate: Float
    var lifetime: Float
    var lifetimeRange: Float
    var emissionLatitude: CGFloat
    var emissionLongitude: CGFloat
    var emissionRange: CGFloat
    var velocity: CGFloat
    var velocityRange: CGFloat
    var xAcceleration: CGFloat
    var yAcceleration: CGFloat
    var zAcceleration: CGFloat
    var scale: CGFloat
    var scaleRange: CGFloat
    var scaleSpeed: CGFloat
    var spin: CGFloat
    var spinRange: CGFloat
    var color: CGColor?
    var redRange: Float
    var greenRange: Float
    var blueRange: Float
    var alphaRange: Float
    var redSpeed: Float
    var greenSpeed: Float
    var blueSpeed: Float
    var alphaSpeed: Float
    var contents: Any?
    var contentsRect: CGRect
    var contentsScale: CGFloat
    var minificationFilter: String
    var magnificationFilter: String
    var minificationFilterBias: Float
    var emitterCells: [CAEmitterCell]?
    var style: [AnyHashable : Any]?
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension CAEmitterCell : CVarArg {
}
extension CAEmitterCell : Equatable, Hashable {
    var hashValue: Int { get }
}
CAMediaTiming, CVarArg, Equatable, Hashable, NSCodingiOS 5.0

Declaration
From
var contents: AnyObject?
To
var contents: Any?

Declaration
From
class func defaultValueForKey(_ key: String) -> AnyObject?
To
class func defaultValue(forKey key: String) -> Any?

Declaration
From
var enabled: Bool
To
var isEnabled: Bool

Declaration
From
func shouldArchiveValueForKey(_ key: String) -> Bool
To
func shouldArchiveValue(forKey key: String) -> Bool

Declaration
From
var style: [NSObject : AnyObject]?
To
var style: [AnyHashable : Any]?

DeclarationProtocolsIntroduction
From
class CAEmitterLayer : CALayer {
    var emitterCells: [CAEmitterCell]?
    var birthRate: Float
    var lifetime: Float
    var emitterPosition: CGPoint
    var emitterZPosition: CGFloat
    var emitterSize: CGSize
    var emitterDepth: CGFloat
    var emitterShape: String
    var emitterMode: String
    var renderMode: String
    var preservesDepth: Bool
    var velocity: Float
    var scale: Float
    var spin: Float
    var seed: UInt32
}
--iOS 8.0
To
class CAEmitterLayer : CALayer {
    var emitterCells: [CAEmitterCell]?
    var birthRate: Float
    var lifetime: Float
    var emitterPosition: CGPoint
    var emitterZPosition: CGFloat
    var emitterSize: CGSize
    var emitterDepth: CGFloat
    var emitterShape: String
    var emitterMode: String
    var renderMode: String
    var preservesDepth: Bool
    var velocity: Float
    var scale: Float
    var spin: Float
    var seed: UInt32
    func scroll(_ p: CGPoint)
    func scrollRectToVisible(_ r: CGRect)
    var visibleRect: CGRect { get }
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension CAEmitterLayer : CVarArg {
}
extension CAEmitterLayer : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, Equatable, HashableiOS 5.0

DeclarationProtocolsIntroduction
From
class CAGradientLayer : CALayer {
    var colors: [AnyObject]?
    var locations: [NSNumber]?
    var startPoint: CGPoint
    var endPoint: CGPoint
    var type: String
}
--iOS 8.0
To
class CAGradientLayer : CALayer {
    var colors: [Any]?
    var locations: [NSNumber]?
    var startPoint: CGPoint
    var endPoint: CGPoint
    var type: String
    func scroll(_ p: CGPoint)
    func scrollRectToVisible(_ r: CGRect)
    var visibleRect: CGRect { get }
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension CAGradientLayer : CVarArg {
}
extension CAGradientLayer : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, Equatable, HashableiOS 3.0

Declaration
From
var colors: [AnyObject]?
To
var colors: [Any]?

DeclarationIntroduction
From
class CAKeyframeAnimation : CAPropertyAnimation {
    var values: [AnyObject]?
    var path: CGPath?
    var keyTimes: [NSNumber]?
    var timingFunctions: [CAMediaTimingFunction]?
    var calculationMode: String
    var tensionValues: [NSNumber]?
    var continuityValues: [NSNumber]?
    var biasValues: [NSNumber]?
    var rotationMode: String?
}
iOS 8.0
To
class CAKeyframeAnimation : CAPropertyAnimation {
    var values: [Any]?
    var path: CGPath?
    var keyTimes: [NSNumber]?
    var timingFunctions: [CAMediaTimingFunction]?
    var calculationMode: String
    var tensionValues: [NSNumber]?
    var continuityValues: [NSNumber]?
    var biasValues: [NSNumber]?
    var rotationMode: String?
}
iOS 2.0

Declaration
From
var values: [AnyObject]?
To
var values: [Any]?

Modified CALayer
DeclarationProtocolsIntroduction
From
class CALayer : NSObject, NSCoding, CAMediaTiming {
    convenience init()
    class func layer() -> Self
    init()
    init(layer layer: AnyObject)
    func presentationLayer() -> AnyObject?
    func modelLayer() -> AnyObject
    class func defaultValueForKey(_ key: String) -> AnyObject?
    class func needsDisplayForKey(_ key: String) -> Bool
    func shouldArchiveValueForKey(_ key: String) -> Bool
    var bounds: CGRect
    var position: CGPoint
    var zPosition: CGFloat
    var anchorPoint: CGPoint
    var anchorPointZ: CGFloat
    var transform: CATransform3D
    func affineTransform() -> CGAffineTransform
    func setAffineTransform(_ m: CGAffineTransform)
    var frame: CGRect
    var hidden: Bool
    var doubleSided: Bool
    var geometryFlipped: Bool
    func contentsAreFlipped() -> Bool
    var superlayer: CALayer? { get }
    func removeFromSuperlayer()
    var sublayers: [CALayer]?
    func addSublayer(_ layer: CALayer)
    func insertSublayer(_ layer: CALayer, atIndex idx: UInt32)
    func insertSublayer(_ layer: CALayer, below sibling: CALayer?)
    func insertSublayer(_ layer: CALayer, above sibling: CALayer?)
    func replaceSublayer(_ layer: CALayer, with layer2: CALayer)
    var sublayerTransform: CATransform3D
    var mask: CALayer?
    var masksToBounds: Bool
    func convertPoint(_ p: CGPoint, fromLayer l: CALayer?) -> CGPoint
    func convertPoint(_ p: CGPoint, toLayer l: CALayer?) -> CGPoint
    func convertRect(_ r: CGRect, fromLayer l: CALayer?) -> CGRect
    func convertRect(_ r: CGRect, toLayer l: CALayer?) -> CGRect
    func convertTime(_ t: CFTimeInterval, fromLayer l: CALayer?) -> CFTimeInterval
    func convertTime(_ t: CFTimeInterval, toLayer l: CALayer?) -> CFTimeInterval
    func hitTest(_ p: CGPoint) -> CALayer?
    func containsPoint(_ p: CGPoint) -> Bool
    var contents: AnyObject?
    var contentsRect: CGRect
    var contentsGravity: String
    var contentsScale: CGFloat
    var contentsCenter: CGRect
    var minificationFilter: String
    var magnificationFilter: String
    var minificationFilterBias: Float
    var opaque: Bool
    func display()
    func setNeedsDisplay()
    func setNeedsDisplayInRect(_ r: CGRect)
    func needsDisplay() -> Bool
    func displayIfNeeded()
    var needsDisplayOnBoundsChange: Bool
    var drawsAsynchronously: Bool
    func drawInContext(_ ctx: CGContext)
    func renderInContext(_ ctx: CGContext)
    var edgeAntialiasingMask: CAEdgeAntialiasingMask
    var allowsEdgeAntialiasing: Bool
    var backgroundColor: CGColor?
    var cornerRadius: CGFloat
    var borderWidth: CGFloat
    var borderColor: CGColor?
    var opacity: Float
    var allowsGroupOpacity: Bool
    var compositingFilter: AnyObject?
    var filters: [AnyObject]?
    var backgroundFilters: [AnyObject]?
    var shouldRasterize: Bool
    var rasterizationScale: CGFloat
    var shadowColor: CGColor?
    var shadowOpacity: Float
    var shadowOffset: CGSize
    var shadowRadius: CGFloat
    var shadowPath: CGPath?
    func preferredFrameSize() -> CGSize
    func setNeedsLayout()
    func needsLayout() -> Bool
    func layoutIfNeeded()
    func layoutSublayers()
    class func defaultActionForKey(_ event: String) -> CAAction?
    func actionForKey(_ event: String) -> CAAction?
    var actions: [String : CAAction]?
    func addAnimation(_ anim: CAAnimation, forKey key: String?)
    func removeAllAnimations()
    func removeAnimationForKey(_ key: String)
    func animationKeys() -> [String]?
    func animationForKey(_ key: String) -> CAAnimation?
    var name: String?
    weak var delegate: AnyObject?
    var style: [NSObject : AnyObject]?
}
extension CALayer {
    func scrollPoint(_ p: CGPoint)
    func scrollRectToVisible(_ r: CGRect)
    var visibleRect: CGRect { get }
}
CAMediaTiming, NSCodingiOS 8.0
To
class CALayer : NSObject, NSCoding, CAMediaTiming {
    convenience init()
    class func layer() -> Self
    init()
    init(layer layer: Any)
    func presentation() -> Self?
    func model() -> Self
    class func defaultValue(forKey key: String) -> Any?
    class func needsDisplay(forKey key: String) -> Bool
    func shouldArchiveValue(forKey key: String) -> Bool
    var bounds: CGRect
    var position: CGPoint
    var zPosition: CGFloat
    var anchorPoint: CGPoint
    var anchorPointZ: CGFloat
    var transform: CATransform3D
    func affineTransform() -> CGAffineTransform
    func setAffineTransform(_ m: CGAffineTransform)
    var frame: CGRect
    var isHidden: Bool
    var isDoubleSided: Bool
    var isGeometryFlipped: Bool
    func contentsAreFlipped() -> Bool
    var superlayer: CALayer? { get }
    func removeFromSuperlayer()
    var sublayers: [CALayer]?
    func addSublayer(_ layer: CALayer)
    func insertSublayer(_ layer: CALayer, at idx: UInt32)
    func insertSublayer(_ layer: CALayer, below sibling: CALayer?)
    func insertSublayer(_ layer: CALayer, above sibling: CALayer?)
    func replaceSublayer(_ layer: CALayer, with layer2: CALayer)
    var sublayerTransform: CATransform3D
    var mask: CALayer?
    var masksToBounds: Bool
    func convert(_ p: CGPoint, from l: CALayer?) -> CGPoint
    func convert(_ p: CGPoint, to l: CALayer?) -> CGPoint
    func convert(_ r: CGRect, from l: CALayer?) -> CGRect
    func convert(_ r: CGRect, to l: CALayer?) -> CGRect
    func convertTime(_ t: CFTimeInterval, from l: CALayer?) -> CFTimeInterval
    func convertTime(_ t: CFTimeInterval, to l: CALayer?) -> CFTimeInterval
    func hitTest(_ p: CGPoint) -> CALayer?
    func contains(_ p: CGPoint) -> Bool
    var contents: Any?
    var contentsRect: CGRect
    var contentsGravity: String
    var contentsScale: CGFloat
    var contentsCenter: CGRect
    var contentsFormat: String
    var minificationFilter: String
    var magnificationFilter: String
    var minificationFilterBias: Float
    var isOpaque: Bool
    func display()
    func setNeedsDisplay()
    func setNeedsDisplayIn(_ r: CGRect)
    func needsDisplay() -> Bool
    func displayIfNeeded()
    var needsDisplayOnBoundsChange: Bool
    var drawsAsynchronously: Bool
    func draw(in ctx: CGContext)
    func render(in ctx: CGContext)
    var edgeAntialiasingMask: CAEdgeAntialiasingMask
    var allowsEdgeAntialiasing: Bool
    var backgroundColor: CGColor?
    var cornerRadius: CGFloat
    var borderWidth: CGFloat
    var borderColor: CGColor?
    var opacity: Float
    var allowsGroupOpacity: Bool
    var compositingFilter: Any?
    var filters: [Any]?
    var backgroundFilters: [Any]?
    var shouldRasterize: Bool
    var rasterizationScale: CGFloat
    var shadowColor: CGColor?
    var shadowOpacity: Float
    var shadowOffset: CGSize
    var shadowRadius: CGFloat
    var shadowPath: CGPath?
    func preferredFrameSize() -> CGSize
    func setNeedsLayout()
    func needsLayout() -> Bool
    func layoutIfNeeded()
    func layoutSublayers()
    class func defaultAction(forKey event: String) -> CAAction?
    func action(forKey event: String) -> CAAction?
    var actions: [String : CAAction]?
    func add(_ anim: CAAnimation, forKey key: String?)
    func removeAllAnimations()
    func removeAnimation(forKey key: String)
    func animationKeys() -> [String]?
    func animation(forKey key: String) -> CAAnimation?
    var name: String?
    weak var delegate: CALayerDelegate?
    var style: [AnyHashable : Any]?
    func scroll(_ p: CGPoint)
    func scrollRectToVisible(_ r: CGRect)
    var visibleRect: CGRect { get }
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension CALayer : CVarArg {
}
extension CALayer : Equatable, Hashable {
    var hashValue: Int { get }
}
extension CALayer {
    func scroll(_ p: CGPoint)
    func scrollRectToVisible(_ r: CGRect)
    var visibleRect: CGRect { get }
}
CAMediaTiming, CVarArg, Equatable, Hashable, NSCodingiOS 2.0

Declaration
From
func actionForKey(_ event: String) -> CAAction?
To
func action(forKey event: String) -> CAAction?

Declaration
From
func addAnimation(_ anim: CAAnimation, forKey key: String?)
To
func add(_ anim: CAAnimation, forKey key: String?)

Declaration
From
func animationForKey(_ key: String) -> CAAnimation?
To
func animation(forKey key: String) -> CAAnimation?

Declaration
From
var backgroundFilters: [AnyObject]?
To
var backgroundFilters: [Any]?

Declaration
From
var compositingFilter: AnyObject?
To
var compositingFilter: Any?

Declaration
From
func containsPoint(_ p: CGPoint) -> Bool
To
func contains(_ p: CGPoint) -> Bool

Declaration
From
var contents: AnyObject?
To
var contents: Any?

Declaration
From
func convertPoint(_ p: CGPoint, fromLayer l: CALayer?) -> CGPoint
To
func convert(_ p: CGPoint, from l: CALayer?) -> CGPoint

Declaration
From
func convertRect(_ r: CGRect, fromLayer l: CALayer?) -> CGRect
To
func convert(_ r: CGRect, from l: CALayer?) -> CGRect

Declaration
From
func convertPoint(_ p: CGPoint, toLayer l: CALayer?) -> CGPoint
To
func convert(_ p: CGPoint, to l: CALayer?) -> CGPoint

Declaration
From
func convertRect(_ r: CGRect, toLayer l: CALayer?) -> CGRect
To
func convert(_ r: CGRect, to l: CALayer?) -> CGRect

Declaration
From
func convertTime(_ t: CFTimeInterval, fromLayer l: CALayer?) -> CFTimeInterval
To
func convertTime(_ t: CFTimeInterval, from l: CALayer?) -> CFTimeInterval

Declaration
From
func convertTime(_ t: CFTimeInterval, toLayer l: CALayer?) -> CFTimeInterval
To
func convertTime(_ t: CFTimeInterval, to l: CALayer?) -> CFTimeInterval

Declaration
From
class func defaultActionForKey(_ event: String) -> CAAction?
To
class func defaultAction(forKey event: String) -> CAAction?

Declaration
From
class func defaultValueForKey(_ key: String) -> AnyObject?
To
class func defaultValue(forKey key: String) -> Any?

Declaration
From
weak var delegate: AnyObject?
To
weak var delegate: CALayerDelegate?

Declaration
From
func drawInContext(_ ctx: CGContext)
To
func draw(in ctx: CGContext)

Declaration
From
var filters: [AnyObject]?
To
var filters: [Any]?

Declaration
From
init(layer layer: AnyObject)
To
init(layer layer: Any)

Declaration
From
func insertSublayer(_ layer: CALayer, atIndex idx: UInt32)
To
func insertSublayer(_ layer: CALayer, at idx: UInt32)

Declaration
From
var doubleSided: Bool
To
var isDoubleSided: Bool

Declaration
From
var geometryFlipped: Bool
To
var isGeometryFlipped: Bool

Declaration
From
var hidden: Bool
To
var isHidden: Bool

Declaration
From
var opaque: Bool
To
var isOpaque: Bool

Declaration
From
func modelLayer() -> AnyObject
To
func model() -> Self

Declaration
From
class func needsDisplayForKey(_ key: String) -> Bool
To
class func needsDisplay(forKey key: String) -> Bool

Declaration
From
func presentationLayer() -> AnyObject?
To
func presentation() -> Self?

Declaration
From
func removeAnimationForKey(_ key: String)
To
func removeAnimation(forKey key: String)

Declaration
From
func renderInContext(_ ctx: CGContext)
To
func render(in ctx: CGContext)

Declaration
From
func scrollPoint(_ p: CGPoint)
To
func scroll(_ p: CGPoint)

Declaration
From
func setNeedsDisplayInRect(_ r: CGRect)
To
func setNeedsDisplayIn(_ r: CGRect)

Declaration
From
func shouldArchiveValueForKey(_ key: String) -> Bool
To
func shouldArchiveValue(forKey key: String) -> Bool

Modified CALayer.style
Declaration
From
var style: [NSObject : AnyObject]?
To
var style: [AnyHashable : Any]?

DeclarationProtocolsIntroduction
From
class CAMediaTimingFunction : NSObject, NSCoding {
    convenience init(name name: String)
    class func functionWithName(_ name: String) -> Self
    convenience init(controlPoints c1x: Float, _ c1y: Float, _ c2x: Float, _ c2y: Float)
    class func functionWithControlPoints(_ c1x: Float, _ c1y: Float, _ c2x: Float, _ c2y: Float) -> Self
    init(controlPoints c1x: Float, _ c1y: Float, _ c2x: Float, _ c2y: Float)
    func getControlPointAtIndex(_ idx: Int, values ptr: UnsafeMutablePointer<Float>)
}
NSCodingiOS 8.0
To
class CAMediaTimingFunction : NSObject, NSCoding {
    convenience init(name name: String)
    class func withName(_ name: String) -> Self
    convenience init(controlPoints c1x: Float, _ c1y: Float, _ c2x: Float, _ c2y: Float)
    class func withControlPoints(_ c1x: Float, _ c1y: Float, _ c2x: Float, _ c2y: Float) -> Self
    init(controlPoints c1x: Float, _ c1y: Float, _ c2x: Float, _ c2y: Float)
    func getControlPoint(at idx: Int, values ptr: UnsafeMutablePointer<Float>!)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension CAMediaTimingFunction : CVarArg {
}
extension CAMediaTimingFunction : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, Equatable, Hashable, NSCodingiOS 2.0

Declaration
From
func getControlPointAtIndex(_ idx: Int, values ptr: UnsafeMutablePointer<Float>)
To
func getControlPoint(at idx: Int, values ptr: UnsafeMutablePointer<Float>!)

Modified CAMetalLayer
DeclarationProtocols
From
class CAMetalLayer : CALayer {
    var device: MTLDevice?
    var pixelFormat: MTLPixelFormat
    var framebufferOnly: Bool
    var drawableSize: CGSize
    func nextDrawable() -> CAMetalDrawable?
    var presentsWithTransaction: Bool
}
--
To
class CAMetalLayer : CALayer {
    var device: MTLDevice?
    var pixelFormat: MTLPixelFormat
    var framebufferOnly: Bool
    var drawableSize: CGSize
    func nextDrawable() -> CAMetalDrawable?
    var presentsWithTransaction: Bool
    func scroll(_ p: CGPoint)
    func scrollRectToVisible(_ r: CGRect)
    var visibleRect: CGRect { get }
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension CAMetalLayer : CVarArg {
}
extension CAMetalLayer : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, Equatable, Hashable

DeclarationIntroduction
From
class CAPropertyAnimation : CAAnimation {
    convenience init(keyPath path: String?)
    class func animationWithKeyPath(_ path: String?) -> Self
    var keyPath: String?
    var additive: Bool
    var cumulative: Bool
    var valueFunction: CAValueFunction?
}
iOS 8.0
To
class CAPropertyAnimation : CAAnimation {
    convenience init(keyPath path: String?)
    class func withKeyPath(_ path: String?) -> Self
    var keyPath: String?
    var isAdditive: Bool
    var isCumulative: Bool
    var valueFunction: CAValueFunction?
}
iOS 2.0

Declaration
From
var additive: Bool
To
var isAdditive: Bool

Declaration
From
var cumulative: Bool
To
var isCumulative: Bool

DeclarationProtocolsIntroduction
From
class CAReplicatorLayer : CALayer {
    var instanceCount: Int
    var preservesDepth: Bool
    var instanceDelay: CFTimeInterval
    var instanceTransform: CATransform3D
    var instanceColor: CGColor?
    var instanceRedOffset: Float
    var instanceGreenOffset: Float
    var instanceBlueOffset: Float
    var instanceAlphaOffset: Float
}
--iOS 8.0
To
class CAReplicatorLayer : CALayer {
    var instanceCount: Int
    var preservesDepth: Bool
    var instanceDelay: CFTimeInterval
    var instanceTransform: CATransform3D
    var instanceColor: CGColor?
    var instanceRedOffset: Float
    var instanceGreenOffset: Float
    var instanceBlueOffset: Float
    var instanceAlphaOffset: Float
    func scroll(_ p: CGPoint)
    func scrollRectToVisible(_ r: CGRect)
    var visibleRect: CGRect { get }
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension CAReplicatorLayer : CVarArg {
}
extension CAReplicatorLayer : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, Equatable, HashableiOS 3.0

Modified CAScrollLayer
DeclarationProtocolsIntroduction
From
class CAScrollLayer : CALayer {
    func scrollToPoint(_ p: CGPoint)
    func scrollToRect(_ r: CGRect)
    var scrollMode: String
}
--iOS 8.0
To
class CAScrollLayer : CALayer {
    func scroll(to p: CGPoint)
    func scroll(to r: CGRect)
    var scrollMode: String
    func scroll(_ p: CGPoint)
    func scrollRectToVisible(_ r: CGRect)
    var visibleRect: CGRect { get }
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension CAScrollLayer : CVarArg {
}
extension CAScrollLayer : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, Equatable, HashableiOS 2.0

Declaration
From
func scrollToRect(_ r: CGRect)
To
func scroll(to r: CGRect)

Declaration
From
func scrollToPoint(_ p: CGPoint)
To
func scroll(to p: CGPoint)

Modified CAShapeLayer
DeclarationProtocolsIntroduction
From
class CAShapeLayer : CALayer {
    var path: CGPath?
    var fillColor: CGColor?
    var fillRule: String
    var strokeColor: CGColor?
    var strokeStart: CGFloat
    var strokeEnd: CGFloat
    var lineWidth: CGFloat
    var miterLimit: CGFloat
    var lineCap: String
    var lineJoin: String
    var lineDashPhase: CGFloat
    var lineDashPattern: [NSNumber]?
}
--iOS 8.0
To
class CAShapeLayer : CALayer {
    var path: CGPath?
    var fillColor: CGColor?
    var fillRule: String
    var strokeColor: CGColor?
    var strokeStart: CGFloat
    var strokeEnd: CGFloat
    var lineWidth: CGFloat
    var miterLimit: CGFloat
    var lineCap: String
    var lineJoin: String
    var lineDashPhase: CGFloat
    var lineDashPattern: [NSNumber]?
    func scroll(_ p: CGPoint)
    func scrollRectToVisible(_ r: CGRect)
    var visibleRect: CGRect { get }
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension CAShapeLayer : CVarArg {
}
extension CAShapeLayer : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, Equatable, HashableiOS 3.0

Modified CATextLayer
DeclarationProtocolsIntroduction
From
class CATextLayer : CALayer {
    @NSCopying var string: AnyObject?
    var font: AnyObject?
    var fontSize: CGFloat
    var foregroundColor: CGColor?
    var wrapped: Bool
    var truncationMode: String
    var alignmentMode: String
    var allowsFontSubpixelQuantization: Bool
}
--iOS 8.0
To
class CATextLayer : CALayer {
    var string: Any?
    var font: CFTypeRef?
    var fontSize: CGFloat
    var foregroundColor: CGColor?
    var isWrapped: Bool
    var truncationMode: String
    var alignmentMode: String
    var allowsFontSubpixelQuantization: Bool
    func scroll(_ p: CGPoint)
    func scrollRectToVisible(_ r: CGRect)
    var visibleRect: CGRect { get }
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension CATextLayer : CVarArg {
}
extension CATextLayer : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, Equatable, HashableiOS 2.0

Declaration
From
var font: AnyObject?
To
var font: CFTypeRef?

Declaration
From
var wrapped: Bool
To
var isWrapped: Bool

Declaration
From
@NSCopying var string: AnyObject?
To
var string: Any?

Modified CATiledLayer
DeclarationProtocolsIntroduction
From
class CATiledLayer : CALayer {
    class func fadeDuration() -> CFTimeInterval
    var levelsOfDetail: Int
    var levelsOfDetailBias: Int
    var tileSize: CGSize
}
--iOS 8.0
To
class CATiledLayer : CALayer {
    class func fadeDuration() -> CFTimeInterval
    var levelsOfDetail: Int
    var levelsOfDetailBias: Int
    var tileSize: CGSize
    func scroll(_ p: CGPoint)
    func scrollRectToVisible(_ r: CGRect)
    var visibleRect: CGRect { get }
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension CATiledLayer : CVarArg {
}
extension CATiledLayer : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, Equatable, HashableiOS 2.0

Modified CATransaction
DeclarationProtocolsIntroduction
From
class CATransaction : NSObject {
    class func begin()
    class func commit()
    class func flush()
    class func lock()
    class func unlock()
    class func animationDuration() -> CFTimeInterval
    class func setAnimationDuration(_ dur: CFTimeInterval)
    class func animationTimingFunction() -> CAMediaTimingFunction?
    class func setAnimationTimingFunction(_ function: CAMediaTimingFunction?)
    class func disableActions() -> Bool
    class func setDisableActions(_ flag: Bool)
    class func completionBlock() -> (() -> Void)?
    class func setCompletionBlock(_ block: (() -> Void)?)
    class func valueForKey(_ key: String) -> AnyObject?
    class func setValue(_ anObject: AnyObject?, forKey key: String)
}
--iOS 8.0
To
class CATransaction : NSObject {
    class func begin()
    class func commit()
    class func flush()
    class func lock()
    class func unlock()
    class func animationDuration() -> CFTimeInterval
    class func setAnimationDuration(_ dur: CFTimeInterval)
    class func animationTimingFunction() -> CAMediaTimingFunction?
    class func setAnimationTimingFunction(_ function: CAMediaTimingFunction?)
    class func disableActions() -> Bool
    class func setDisableActions(_ flag: Bool)
    class func completionBlock() -> (() -> Swift.Void)?
    class func setCompletionBlock(_ block: (@escaping () -> Swift.Void)?)
    class func value(forKey key: String) -> Any?
    class func setValue(_ anObject: Any?, forKey key: String)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension CATransaction : CVarArg {
}
extension CATransaction : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, Equatable, HashableiOS 2.0

Declaration
From
class func completionBlock() -> (() -> Void)?
To
class func completionBlock() -> (() -> Swift.Void)?

Declaration
From
class func setCompletionBlock(_ block: (() -> Void)?)
To
class func setCompletionBlock(_ block: (@escaping () -> Swift.Void)?)

Declaration
From
class func setValue(_ anObject: AnyObject?, forKey key: String)
To
class func setValue(_ anObject: Any?, forKey key: String)

Declaration
From
class func valueForKey(_ key: String) -> AnyObject?
To
class func value(forKey key: String) -> Any?

DeclarationProtocolsIntroduction
From
class CATransformLayer : CALayer {
}
--iOS 8.0
To
class CATransformLayer : CALayer {
    func scroll(_ p: CGPoint)
    func scrollRectToVisible(_ r: CGRect)
    var visibleRect: CGRect { get }
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension CATransformLayer : CVarArg {
}
extension CATransformLayer : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, Equatable, HashableiOS 3.0

Modified CATransition
DeclarationIntroduction
From
class CATransition : CAAnimation {
    var type: String
    var subtype: String?
    var startProgress: Float
    var endProgress: Float
    var filter: AnyObject?
}
iOS 8.0
To
class CATransition : CAAnimation {
    var type: String
    var subtype: String?
    var startProgress: Float
    var endProgress: Float
    var filter: Any?
}
iOS 2.0

Declaration
From
var filter: AnyObject?
To
var filter: Any?

DeclarationProtocolsIntroduction
From
class CAValueFunction : NSObject, NSCoding {
    convenience init?(name name: String)
    class func functionWithName(_ name: String) -> Self?
    var name: String { get }
}
NSCodingiOS 8.0
To
class CAValueFunction : NSObject, NSCoding {
    convenience init?(name name: String)
    class func withName(_ name: String) -> Self?
    var name: String { get }
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension CAValueFunction : CVarArg {
}
extension CAValueFunction : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, Equatable, Hashable, NSCodingiOS 3.0

Declaration
From
var CATransform3DValue: CATransform3D { get }
To
var caTransform3DValue: CATransform3D { get }

Declaration
From
init(CATransform3D t: CATransform3D)
To
init(caTransform3D t: CATransform3D)