RLMObjectId
Objective-C
@interface RLMObjectId : NSObject <NSCopying>
Swift
@_nonSendable(_assumed) class RLMObjectId : NSObject, NSCopying, @unchecked Sendable
Um identificador de objeto exclusivo de 12 bytes (provavelmente).
Os ObjectIds são semelhantes a um GUID ou UUID e podem ser usados para identificar exclusivamente objetos sem um gerador de ID centralizado. Um ObjectId consiste em:
- Um carimbo de data/hora de 4 bytes medindo o tempo de criação do ObjectId em segundos desde a Era UNIX.
- Um valor aleatório de 5 bytes
- Um contador de 3 bytes, inicializado para um valor aleatório.
Os ObjectIds devem ser gerados rapidamente. A classificação por um campo ObjectId normalmente resultará na classificação dos objetos na ordem de criação.
-
Cria um novo ObjectId inicializado aleatoriamente.
Declaração
Objective-C
+ (nonnull instancetype)objectId;
Swift
class func generate() -> Self
-
Cria um novo ObjectId inicializado com zero.
Declaração
Objective-C
- (nonnull instancetype)init;
Swift
init()
-
Cria um novo ObjectId a partir da cadeia hexadecimal de 24 bytes fornecida.
Retorna
nil
e defineerror
se a string não tiver 24 caracteres ou contiver caracteres diferente de 0-9a-fA-F.Declaração
Objective-C
- (nullable instancetype)initWithString:(nonnull NSString *)string error:(NSError *_Nullable *_Nullable)error;
Swift
init(string: String) throws
Parâmetros
string
A string a ser analisada.
-
Cria um novo ObjectId usando a data fornecida, o identificador da máquina e o identificador do processo.
Declaração
Objective-C
- (nonnull instancetype)initWithTimestamp:(nonnull NSDate *)timestamp machineIdentifier:(int)machineIdentifier processIdentifier:(int)processIdentifier;
Swift
init(timestamp: Date, machineIdentifier: Int32, processIdentifier: Int32)
Parâmetros
timestamp
Um carimbo de data/hora como NSDate.
machineIdentifier
O identificador da máquina.
processIdentifier
O identificador do processo.
-
Operador de comparação para verificar se o lado direito é maior que o valor atual.
Declaração
Objective-C
- (BOOL)isGreaterThan:(nullable RLMObjectId *)objectId;
Swift
func isGreaterThan(_ objectId: RLMObjectId?) -> Bool
-
Operador de comparação para verificar se o lado direito é maior ou igual ao valor atual.
Declaração
Objective-C
- (BOOL)isGreaterThanOrEqualTo:(nullable RLMObjectId *)objectId;
Swift
func isGreaterThanOrEqual(to objectId: RLMObjectId?) -> Bool
-
Operador de comparação para verificar se o lado direito é menor que o valor atual.
Declaração
Objective-C
- (BOOL)isLessThan:(nullable RLMObjectId *)objectId;
Swift
func isLessThan(_ objectId: RLMObjectId?) -> Bool
-
Operador de comparação para verificar se o lado direito é menor ou igual ao valor atual.
Declaração
Objective-C
- (BOOL)isLessThanOrEqualTo:(nullable RLMObjectId *)objectId;
Swift
func isLessThanOrEqual(to objectId: RLMObjectId?) -> Bool
-
Obtenha o ObjectId como uma string hexadecimal de 24caracteres.
Declaração
Objective-C
@property (nonatomic, readonly) NSString *_Nonnull stringValue;
Swift
var stringValue: String { get }
-
Obtenha o carimbo de data/hora para o RLMObjectId
Declaração
Objective-C
@property (nonatomic, readonly) NSDate *_Nonnull timestamp;
Swift
var timestamp: Date { get }