Firestore Documentsnapshot Get List/Map

May 15, 2019

Kotlin extension

fun <T> DocumentSnapshot.getList(field: String): List<T>? {
    @Suppress("UNCHECKED_CAST")
    return get(field) as? List<T>
}

fun <T1, T2> DocumentSnapshot.getMap(field: String): Map<T1, T2>? {
    @Suppress("UNCHECKED_CAST")
    return get(UserQuoteHistory.QUOTES) as? Map<T1, T2>
}

NOTE: Refer to Kotlin Cast Any to List or Map: Unchecked Cast.

Usage

val items = doc.getList("items")
This work is licensed under a
Creative Commons Attribution-NonCommercial 4.0 International License.