Fonctions de débogage

Fonctions de débogage

Nom Description
EXISTS Renvoie TRUE si la valeur n'est pas une valeur manquante.
IS_ABSENT Renvoie TRUE si la valeur est absente.
IF_ABSENT Remplace la valeur par une expression si elle est absente.
IS_ERROR Capture et vérifie si une erreur a été générée par l'expression sous-jacente.
IF_ERROR Remplace la valeur par une expression si elle a généré une erreur

EXISTS

Syntaxe :

exists(value: ANY) -> BOOLEAN

Description :

Renvoie TRUE si value n'est pas la valeur absente.

Exemples :

value exists(value)
0L TRUE
"foo" TRUE
NULL TRUE
ABSENT FALSE
Node.js

Exemple :

const results = await db.pipeline()
  .collection("customers")
  .select(exists(Field.of("orders")))
  .execute();
    

Web

Exemple :

const result = await execute(db.pipeline()
  .collection("books")
  .select(field("rating").exists().as("hasRating"))
);
Swift
let result = try await db.pipeline()
  .collection("books")
  .select([Field("rating").exists().as("hasRating")])
  .execute()

Kotlin

Exemple :

val result = db.pipeline()
    .collection("books")
    .select(field("rating").exists().alias("hasRating"))
    .execute()

Java

Exemple :

Task<Pipeline.Snapshot> result = db.pipeline()
    .collection("books")
    .select(field("rating").exists().alias("hasRating"))
    .execute();
Python
from google.cloud.firestore_v1.pipeline_expressions import Field

result = (
    client.pipeline()
    .collection("books")
    .select(Field.of("rating").exists().as_("hasRating"))
    .execute()
)

IS_ABSENT

Syntaxe :

is_absent(value: ANY) -> BOOLEAN

Description :

Renvoie TRUE si value est la valeur manquante, et FALSE dans le cas contraire. Les valeurs absentes sont celles qui manquent dans l'entrée, comme un champ de document manquant.

Exemples :

value is_absent(value)
0L FALSE
"foo" FALSE
NULL FALSE
ABSENT TRUE

IF_ABSENT

Syntaxe :

if_absent(value: ANY, replacement: ANY) -> ANY

Description :

Si value est une valeur absente, évalue et renvoie replacement. Sinon, renvoie value.

Exemples :

value replacement if_absent(value, replacement)
5L 0L 5L
NULL 0L NULL
ABSENT 0L 0L

IS_ERROR

Syntaxe :

is_error(try: ANY) -> BOOLEAN

Description :

Renvoie TRUE si une erreur est générée lors de l'évaluation de try. Renvoie FALSE dans les autres cas.

IF_ERROR

Syntaxe :

if_error(try: ANY, catch: ANY) -> ANY

Description :

Si une erreur est générée lors de l'évaluation de try, évalue et renvoie replacement. Sinon, renvoie la valeur résolue de try.