Observable

public final class Observable<T>

A wrapper type generic class to facilitate observer pattern

  • The closure alias type for value change observation

    Declaration

    Swift

    public typealias ValueChanged = (_ oldValue: T, _ newValue: T) -> Void
  • Property to access the underlying value

    Declaration

    Swift

    public var value: T { get set }
  • Initializer to wrap the value as Observable

    Declaration

    Swift

    public required init(_ initialValue: T)

    Parameters

    initialValue

    Generic type

  • Method to add observers

    Declaration

    Swift

    public func add(_ observer: AnyObject, valueChanged: @escaping ValueChanged)

    Parameters

    observer

    The observer object

    valueChanged

    The closure to execute on value changes

  • Method to remove added observers

    Declaration

    Swift

    public func remove(_ observer: AnyObject)

    Parameters

    observer

    The observer object