NSObject

extension NSObject
  • Strong referenced associated object

    Declaration

    Swift

    public var associatedObject: Any? { get set }
  • set an associated object for key pointer Example usage: private struct SomeKey { static var Key = “RandomKey” }

    setAssociatedObject(someObject, forKeyPointer: &SomeKey.Key)

    Declaration

    Swift

    @discardableResult
    public func setAssociatedObject(_ object: Any, forKeyPointer pointer: UnsafeRawPointer? = nil, associationPolicy: objc_AssociationPolicy = .OBJC_ASSOCIATION_RETAIN_NONATOMIC) -> Any?

    Parameters

    object

    an object to be associated

    pointer

    pointer

    associationPolicy

    associationPolicy, default to .OBJC_ASSOCIATION_RETAIN_NONATOMIC (strong reference). Use .OBJC_ASSOCIATION_ASSIGN for weak reference.

    Return Value

    old associated object if existed

  • Undocumented

    Declaration

    Swift

    public func getAssociatedObject(forKeyPointer pointer: UnsafeRawPointer? = nil) -> Any?
  • Undocumented

    Declaration

    Swift

    @discardableResult
    public func clearAssociatedObject(forKeyPointer pointer: UnsafeRawPointer? = nil) -> Any?