  * THE SOFTWARE.
  */
 
-public struct AssociatedObject {
+internal struct AssociatedObject {
     /**
      Gets the Obj-C reference for the instance object within the UIView extension.
      - Parameter base: Base object.

     - Parameter initializer: Object initializer.
     - Returns: The associated reference for the initializer object.
     */
    public static func get<T: Any>(base: Any, key: UnsafePointer<UInt8>, initializer: () -> T) -> T {
        if let v = objc_getAssociatedObject(base, key) as? T {
            return v
        }

     - Parameter value: The object instance to set for the associated object.
     - Returns: The associated reference for the initializer object.
     */
    static func set<T: Any>(base: Any, key: UnsafePointer<UInt8>, value: T) {
        objc_setAssociatedObject(base, key, value, .OBJC_ASSOCIATION_RETAIN)
    }
}
