プロトコル

次のプロトコルはグローバルに利用できます。

識別可能

  • Realm オブジェクトのデフォルトの ID を定義するプロトコル

    オブジェクト サブクラスをこのプロトコルに準拠していると宣言すると、Realm オブジェクトで動作するIdentifiableidのデフォルトの実装が提供されます。

    // Automatically conforms to `Identifiable`
    class MyObjectType: Object, ObjectKeyIdentifiable {
        // ...
    }
    

    必要に応じて、手動でIdentifiableに準拠することもできますが、オブジェクトのメモリ アドレスの使用は管理対象オブジェクトでは機能しないことに注意してください。

    詳細はこちら

    宣言

    Swift

    @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
    public protocol ObjectKeyIdentifiable : ObjectBase, Identifiable

組み合わせ

  • valuePublisher()またはchangesetPublisher()に渡すことができる型。

    宣言

    Swift

    @available(macOS 10.15, watchOS 6.0, iOS 13.0, iOSApplicationExtension 13.0, macOSApplicationExtension 10.15, tvOS 13.0, *)
    public protocol RealmSubscribable
  • 検索、フィルタリング、並べ替え、操作可能なObjectの同義語コレクション。

    詳細はこちら

    宣言

    Swift

    public protocol RealmCollection : RealmCollectionBase
  • 検索、フィルタリング、並べ替え、操作可能なObjectの同種のキーと値のコレクション。

    詳細はこちら

    宣言

    Swift

    public protocol RealmKeyedCollection : ThreadConfined, CustomStringConvertible, Sequence
  • MongoCollection.watch()ストリームの変更をサブスクライブするために使用される削除。

    詳細はこちら

    宣言

    Swift

    public protocol ChangeEventDelegate : AnyObject
  • Realm オブジェクトに保存できる列挙型。

    Int にバックアップされる@objc列挙型のみが Realm オブジェクトに保存でき、列挙型はこのプロトコルに明示的に準拠する必要があります。 例:

    @objc enum MyEnum: Int, RealmEnum {
       case first = 1
       case second = 2
       case third = 7
    }
    
    class MyModel: Object {
       @objc dynamic enumProperty = MyEnum.first
       let optionalEnumProperty = RealmOptional<MyEnum>()
    }
    

    宣言

    Swift

    public protocol RealmEnum : RealmOptionalType, _RealmSchemaDiscoverable
  • RealmOptionalをパラメータ化できる型を説明するプロトコル。

    宣言

    Swift

    public protocol RealmOptionalType
  • Realm リスト、MutableSet、または結果に保存できるタイプ。

    このプロトコルに準拠するように追加のタイプを宣言しても、実際には機能しません。 Realm に値を保存する方法のロジックのほとんどは Swift に実装されておらず、現在、より多くのタイプをサポートするための拡張メカニズムはありません。

    宣言

    Swift

    public protocol RealmCollectionValue : _RealmSchemaDiscoverable, Hashable
  • RealmPropertyTypeをパラメータ化できる型を説明するプロトコル。

    宣言

    Swift

    public protocol RealmPropertyType

MinMaxType

  • 最小値 API と最大値 API で使用できるプロパティのタイプ。

    詳細は、次を参照してください:

    min(ofProperty:), max(ofProperty:)

    宣言

    Swift

    public protocol MinMaxType

AddableType

  • 合計値および平均値 APIで使用できるプロパティのタイプ。

    詳細は、次を参照してください:

    sum(ofProperty:), average(ofProperty:)

    宣言

    Swift

    public protocol AddableType
  • ThreadConfinedに準拠する型のオブジェクトは Realm によって管理されるため、スレッド固有のRealmインスタンスに関連付けられます。 管理対象オブジェクトをスレッド間で渡すには、明示的にエクスポートおよびインポートする必要があります。

    このプロトコルに準拠するオブジェクトの管理対象インスタンスは、 ThreadSafeReference(to:)コンストラクターにを渡すことで、スレッド間で転送されるためのスレッドセーフな参照に変換できます。

    Realm によって定義された型のみがこのプロトコルに意味のあるものに準拠することができ、それに準拠しようとする新しいクラスを定義しても、 ThreadSafeReferenceでは動作しないことに注意してください。

    詳細はこちら

    宣言

    Swift

    public protocol ThreadConfined