ditto-lib / live.ditto / DittoDocumentPath

DittoDocumentPath

class DittoDocumentPath

Provides an interface to specify a path to a key in a document that you can then call a function on to get the value at the specified key as a specific type. You obtain a DittoDocumentPath by subscripting a DittoDocument and you can then further subscript a DittoDocumentPath to further specify the key of the document that you want to get the value of.

Constructors

<init>

DittoDocumentPath(value: Map<String, Any>, docID: String, initialPath: String)

Provides an interface to specify a path to a key in a document that you can then call a function on to get the value at the specified key as a specific type. You obtain a DittoDocumentPath by subscripting a DittoDocument and you can then further subscript a DittoDocumentPath to further specify the key of the document that you want to get the value of.

Properties

boolean

val boolean: Boolean?

Returns the value at the previously specified key in the document as a Boolean if possible, otherwise the return value will be null.

booleanValue

val booleanValue: Boolean

Returns the value at the previously specified key in the document as a Boolean. If the key was invalid the return value will be false.

docID

val docID: String

double

val double: Double?

Returns the value at the previously specified key in the document as a Double if possible, otherwise the return value will be null.

doubleValue

val doubleValue: Double

Returns the value at the previously specified key in the document as a Double. If the key was invalid the return value will be 0.0.

float

val float: Float?

Returns the value at the previously specified key in the document as a Float if possible, otherwise the return value will be null.

floatValue

val floatValue: Float

Returns the value at the previously specified key in the document as a Float. If the key was invalid the return value will be 0f.

int

val int: Int?

Returns the value at the previously specified key in the document as an Int if possible, otherwise the return value will be null.

intValue

val intValue: Int

Returns the value at the previously specified key in the document as an Int. If the key was invalid the return value will be 0.

list

val list: List<Any>?

Returns the value at the previously specified key in the document as a List<Any?> if possible, otherwise the return value will be null.

listValue

val listValue: List<Any>

Returns the value at the previously specified key in the document as a List<Any?>. If the key was invalid the return value will be an empty list.

map

val map: Map<String, Any>?

Returns the value at the previously specified key in the document as a Map<String, Any?> if possible, otherwise the return value will be null.

mapValue

val mapValue: Map<String, Any>

Returns the value at the previously specified key in the document as a Map<String, Any?>. If the key was invalid the return value will be an empty dictionary.

path

var path: String

string

val string: String?

Returns the value at the previously specified key in the document as a String if possible, otherwise the return value will be null.

stringValue

val stringValue: String

Returns the value at the previously specified key in the document as a String. If the key was invalid the return value will be an empty string.

value

val value: Map<String, Any>

Functions

get

operator fun get(key: String): DittoDocumentPath

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

operator fun get(index: Int): DittoDocumentPath

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.