RLMObjectSchema
Objective-C
@interface RLMObjectSchema : NSObject <NSCopying>
Swift
@_nonSendable(_assumed) class RLMObjectSchema : NSObject, NSCopying, @unchecked Sendable
该类表示 Realm 模型对象模式。
使用 Realm 时, RLMObjectSchema
实例允许执行迁移和内省数据库模式。
对象模式映射到核心数据库中的表。
-
一个
RLMProperty
实例数组,表示模式所描述的类的托管属性。声明
Objective-C
@property (nonatomic, copy, readonly) NSArray<RLMProperty *> *_Nonnull properties;
Swift
var properties: [RLMProperty] { get }
-
模式描述的类的名称。
声明
Objective-C
@property (nonatomic, readonly) NSString *_Nonnull className;
Swift
var className: String { get }
-
充当模式描述的类的主键的属性(如果有)。
声明
Objective-C
@property (nonatomic, readonly, nullable) RLMProperty *primaryKeyProperty;
Swift
var primaryKeyProperty: RLMProperty? { get }
-
此 Realm 对象类型是否为嵌入式。
声明
Objective-C
@property (nonatomic, readonly) BOOL isEmbedded;
Swift
var isEmbedded: Bool { get }
-
此对象是否不对称。
声明
Objective-C
@property (nonatomic, readonly) BOOL isAsymmetric;
Swift
var isAsymmetric: Bool { get }
-
按属性名称检索
RLMProperty
对象。声明
Objective-C
- (nullable RLMProperty *)objectForKeyedSubscript: (nonnull NSString *)propertyName;
Swift
subscript(propertyName: String) -> RLMProperty? { get }
参数
propertyName
属性的名称。
返回值
一个
RLMProperty
对象,如果没有具有给定名称的属性,则为nil
。 -
返回两个
RLMObjectSchema
实例是否相等。声明
Objective-C
- (BOOL)isEqualToObjectSchema:(nonnull RLMObjectSchema *)objectSchema;
Swift
func isEqual(to objectSchema: RLMObjectSchema) -> Bool