دوال تصحيح الأخطاء
| الاسم | الوصف |
EXISTS
|
تعرض هذه الدالة TRUE إذا لم تكن القيمة غير متوفّرة
|
IS_ABSENT
|
تعرض الدالة TRUE إذا كانت القيمة غير متوفّرة
|
IF_ABSENT
|
تستبدل القيمة بتعبير إذا كانت غير متوفّرة |
IS_ERROR
|
يرصد الأخطاء ويتحقّق مما إذا كان التعبير الأساسي قد تسبّب في حدوث خطأ |
IF_ERROR
|
تستبدل القيمة بتعبير إذا عرضت خطأً |
ERROR
|
لإنهاء التقييم وعرض خطأ مع الرسالة المحدّدة |
EXISTS
البنية:
exists(value: ANY) -> BOOLEAN
الوصف:
تعرض هذه الدالة TRUE إذا لم تكن قيمة value غير متوفّرة.
أمثلة:
value |
exists(value) |
|---|---|
| 0 لتر | TRUE |
| "foo" | TRUE |
NULL |
TRUE |
ABSENT |
FALSE |
Node.js
const result = await db.pipeline() .collection("books") .select(field("rating").exists().as("hasRating")) .execute();
Web
مثال:
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
مثال:
val result = db.pipeline() .collection("books") .select(field("rating").exists().alias("hasRating")) .execute()
Java
مثال:
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() )
Java
Pipeline.Snapshot result = firestore .pipeline() .collection("books") .select(exists(field("rating")).as("hasRating")) .execute() .get();
متابعة
snapshot := client.Pipeline(). Collection("books"). Select(firestore.Fields( firestore.FieldExists(firestore.FieldOf("rating")).As("hasRating"), )). Execute(ctx)
IS_ABSENT
البنية:
is_absent(value: ANY) -> BOOLEAN
الوصف:
تعرض هذه الدالة TRUE إذا كانت value هي القيمة غير المتوفّرة، وFALSE في الحالات الأخرى. القيم غير المتوفّرة
هي القيم التي لا تظهر في الإدخال، مثل حقل مستند غير متوفّر.
أمثلة:
value |
is_absent(value) |
|---|---|
| 0 لتر | FALSE |
| "foo" | FALSE |
NULL |
FALSE |
ABSENT |
TRUE |
IF_ABSENT
البنية:
if_absent(value: ANY, replacement: ANY) -> ANY
الوصف:
إذا كانت السمة value قيمة غير متوفّرة، يتم تقييم السمة replacement وعرضها. بخلاف ذلك، يتم عرض value.
أمثلة:
value |
replacement |
if_absent(value, replacement) |
|---|---|---|
| 5 لتر | 0 لتر | 5 لتر |
NULL |
0 لتر | NULL |
ABSENT |
0 لتر | 0 لتر |
IS_ERROR
البنية:
is_error(try: ANY) -> BOOLEAN
الوصف:
تعرض هذه الدالة TRUE إذا حدث خطأ أثناء تقييم try. وتعرض FALSE في الحالات الأخرى.
IF_ERROR
البنية:
if_error(try: ANY, catch: ANY) -> ANY
الوصف:
إذا حدث خطأ أثناء تقييم try، يتم تقييم replacement وعرضه. بخلاف ذلك، يتم عرض القيمة التي تم حلّها لـ try.
خطأ
البنية:
error(message: STRING) -> ANY
الوصف:
يؤدي تقييم الدالة error إلى تقييم المسار
وإنهائه مع ظهور خطأ. يتم تضمين message المحدّد في الخطأ.
أمثلة:
cond |
res |
switch_on(cond, res, error("no condition matched")) |
|---|---|---|
TRUE |
1 لتر | 1 لتر |
FALSE |
1 لتر | ERROR ("no condition matched") |