DittoDocumentID

public struct DittoDocumentID : Hashable
extension DittoDocumentID: CustomStringConvertible, CustomDebugStringConvertible
extension DittoDocumentID: ExpressibleByStringLiteral
extension DittoDocumentID: ExpressibleByBooleanLiteral
extension DittoDocumentID: ExpressibleByIntegerLiteral
extension DittoDocumentID: ExpressibleByArrayLiteral
extension DittoDocumentID: ExpressibleByDictionaryLiteral

An identifier for a DittoDocument.

Each DittoDocumentID represents a unique identifier for a document.

  • Initializes a new DittoDocumentID.

    A document ID can be created from any of the following:

    • string
    • integer
    • boolean
    • null
    • byte array
    • array (containing any of the items in this list)
    • map (where the keys must be strings and the values can be made up of any of the items in this list)

    Note that you cannot use floats or other custom types to create a document ID.

    Document IDs are also limited in size, based on their serialized representation, to 256 bytes. You will receive an error if you try to create a document ID that exceeds the size limit.

    Declaration

    Swift

    public init(value: Any?)

    Parameters

    value

    The value that represents the document identifier.

  • Used to specify a path to a key in the document ID that you can subscript further to access a nested key in the document ID.

    Declaration

    Swift

    public subscript(key: String) -> DittoDocumentIDPath { get }

    Parameters

    key

    The next part of the path needed to get to the key in the document ID you wish to get the value of.

    Return Value

    The same DittoDocumentIDPath object with the provided key incorporated into the document ID path.

  • Used to specify an index in the array at the preceding key-path specified through the subscripting defined previously. You can subscript the return value further to access a further nested key in the document ID.

    Declaration

    Swift

    public subscript(index: Int) -> DittoDocumentIDPath { get }

    Parameters

    index

    The index of the array that you wish to access in the key previously specified with the preceding subscripting.

    Return Value

    The same DittoDocumentIDPath object with the provided index incorporated into the document ID path.

  • The underlying value of the document identifier as a native type.

    Declaration

    Swift

    public var value: Any? { get }
  • Returns a native representation of a document identifier.

    Declaration

    Swift

    @available(*, deprecated, message: "use the `value` property instead")
    public func toNative() -> Any?

    Return Value

    A value representing the document identifier.

  • Returns a stringified representation of a document identifier.

    The returned string can be used directly in queries that you use with other Ditto functions. For example you could create a query that was like this:

    myCollection.find("_id == \(docID.toString())")
    

    Declaration

    Swift

    public func toString() -> String

    Return Value

    An String representation of the document identifier.

  • Declaration

    Swift

    public static func == (lhs: DittoDocumentID, rhs: DittoDocumentID) -> Bool
  • Declaration

    Swift

    public func hash(into hasher: inout Hasher)

CustomStringConvertible & CustomDebugStringConvertible