Protocols

The following protocols are available globally.

  • A type which can be stored in a Realm List or Results.

    Declaring additional types as conforming to this protocol will not make them actually work. Most of the logic for how to store values in Realm is not implemented in Swift and there is currently no extension mechanism for supporting more types.

    Declaration

    Swift

    public protocol RealmCollectionValue : Equatable
  • A homogenous collection of Objects which can be retrieved, filtered, sorted, and operated upon.

    See more

    Declaration

    Swift

    public protocol RealmCollection : RealmCollectionBase
  • Types of properties which can be used with the minimum and maximum value APIs.

    See

    min(ofProperty:), max(ofProperty:)

    Declaration

    Swift

    public protocol MinMaxType
  • Types of properties which can be used with the sum and average value APIs.

    See

    sum(ofProperty:), average(ofProperty:)

    Declaration

    Swift

    public protocol AddableType
  • Objects of types which conform to ThreadConfined can be managed by a Realm, which will make them bound to a thread-specific Realm instance. Managed objects must be explicitly exported and imported to be passed between threads.

    Managed instances of objects conforming to this protocol can be converted to a thread-safe reference for transport between threads by passing to the ThreadSafeReference(to:) constructor.

    Note that only types defined by Realm can meaningfully conform to this protocol, and defining new classes which attempt to conform to it will not make them work with ThreadSafeReference.

    See more

    Declaration

    Swift

    public protocol ThreadConfined