EquatableWrapper

@propertyWrapper
public struct EquatableWrapper<T> : Equatable

Wrapper to provide equatable conformance to Apple objects inside of the SDK.

Lifecycle

  • Create an EquatableWrapper given a specified wrapped value.

    Declaration

    Swift

    public init(wrappedValue: T)

Public

  • Generic wrapped value.

    Declaration

    Swift

    public var wrappedValue: T
  • Declaration

    Swift

    public var projectedValue: `Self` { get }

    Return Value

    the projected value, which is the instance of the wrapper.

  • Prevents comparison of all types. The purpose is to only let specific types implement the comparison in a way that make sense.

    Declaration

    Swift

    public static func == (lhs: EquatableWrapper<T>, rhs: EquatableWrapper<T>) -> Bool

    Return Value

    false

  • Prevents comparison of all types. The purpose is to only let specific types implement the comparison in a way that make sense.

    Declaration

    Swift

    public static func != (lhs: EquatableWrapper<T>, rhs: EquatableWrapper<T>) -> Bool

    Return Value

    true

Available where T == CLLocationCoordinate2D

  • Declaration

    Swift

    public static func == (lhs: EquatableWrapper<CLLocationCoordinate2D>, rhs: EquatableWrapper<CLLocationCoordinate2D>) -> Bool

    Return Value

    a Boolean value indicating the equality of two coordinates. The comparison is based on equality of latitude and longitude in both coordinates.

  • Declaration

    Swift

    public static func != (lhs: EquatableWrapper<CLLocationCoordinate2D>, rhs: EquatableWrapper<CLLocationCoordinate2D>) -> Bool

    Return Value

    a Boolean value indicating the inequality of two coordinates. The comparison is based on inequality of latitude and longitude in both coordinates.

Available where T == [CLLocationCoordinate2D]

  • Declaration

    Swift

    static public func == (
        lhs: EquatableWrapper<[CLLocationCoordinate2D]>,
        rhs: EquatableWrapper<[CLLocationCoordinate2D]>
    )
        -> Bool

    Return Value

    a Boolean value indicating the equality of two arrays of coordinates. The comparison is based on equality of latitude and longitude in both arrays’ coordinates.

  • Declaration

    Swift

    static public func != (
        lhs: EquatableWrapper<[CLLocationCoordinate2D]>,
        rhs: EquatableWrapper<[CLLocationCoordinate2D]>
    )
        -> Bool

    Return Value

    a Boolean value indicating the inequality of two arrays of coordinates. The comparison is based on inequality of latitude and longitude in both arrays’ coordinates.

Available where T == CLLocationCoordinate2D?

  • Declaration

    Swift

    static public func == (
        lhs: EquatableWrapper<CLLocationCoordinate2D?>,
        rhs: EquatableWrapper<CLLocationCoordinate2D?>
    )
        -> Bool

    Return Value

    a Boolean value indicating the equality of two optional coordinates. The comparison is based on equality of latitude and longitude in both optional coordinates.

  • Declaration

    Swift

    static public func != (
        lhs: EquatableWrapper<CLLocationCoordinate2D?>,
        rhs: EquatableWrapper<CLLocationCoordinate2D?>
    )
        -> Bool

    Return Value

    a Boolean value indicating the inequality of two optional coordinates. The comparison is based on inequality of latitude and longitude in both optional coordinates.

Available where T == [CLLocationCoordinate2D]?

  • The comparison is based on equality of latitude and longitude in both optional arrays’ coordinates.

    Declaration

    Swift

    static public func == (
        lhs: EquatableWrapper<[CLLocationCoordinate2D]?>,
        rhs: EquatableWrapper<[CLLocationCoordinate2D]?>
    )
        -> Bool
  • The comparison is based on inequality of latitude and longitude in both optional arrays’ coordinates.

    Declaration

    Swift

    static public func != (
        lhs: EquatableWrapper<[CLLocationCoordinate2D]?>,
        rhs: EquatableWrapper<[CLLocationCoordinate2D]?>
    )
        -> Bool