توابع اشکال زدایی

توابع اشکال‌زدایی

نام توضیحات
EXISTS اگر مقدار، مقدار غایب نباشد، TRUE را برمی‌گرداند
IS_ABSENT اگر مقدار مورد نظر وجود نداشته باشد، TRUE برمی‌گرداند
IF_ABSENT اگر مقدار وجود نداشته باشد، آن را با یک عبارت جایگزین می‌کند
IS_ERROR دریافت و بررسی می‌کند که آیا خطایی توسط عبارت اصلی ایجاد شده است یا خیر.
IF_ERROR اگر خطایی رخ داده باشد، مقدار را با یک عبارت جایگزین می‌کند.

موجود است

نحو:

exists(value: ANY) -> BOOLEAN

شرح:

اگر value مقدار غایب نباشد، TRUE را برمی‌گرداند.

مثال‌ها:

value exists(value)
0 لیتر TRUE
"فو" TRUE
NULL TRUE
ABSENT FALSE
نود جی اس

مثال:

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

Web

مثال:

const result = await execute(db.pipeline()
  .collection("books")
  .select(field("rating").exists().as("hasRating"))
);
سویفت
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();
پایتون
from google.cloud.firestore_v1.pipeline_expressions import Field

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

غایب است

نحو:

is_absent(value: ANY) -> BOOLEAN

شرح:

اگر value مقدار غایب باشد، مقدار TRUE و در غیر این صورت FALSE را برمی‌گرداند. مقادیر غایب، مقادیری هستند که در ورودی وجود ندارند، مانند یک فیلد سند که وجود ندارد.

مثال‌ها:

value is_absent(value)
0 لیتر FALSE
"فو" FALSE
NULL FALSE
ABSENT TRUE

اگر_غایب باشد

نحو:

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

شرح:

اگر value یک مقدار موجود نباشد، ارزیابی کرده و replacement را برمی‌گرداند. در غیر این صورت value را برمی‌گرداند.

مثال‌ها:

value replacement if_absent(value, replacement)
۵ لیتر 0 لیتر ۵ لیتر
NULL 0 لیتر NULL
ABSENT 0 لیتر 0 لیتر

خطای IS

نحو:

is_error(try: ANY) -> BOOLEAN

شرح:

اگر در حین ارزیابی try خطایی رخ دهد، TRUE برمی‌گرداند. در غیر این صورت، FALSE برمی‌گرداند.

اگر_خطا

نحو:

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

شرح:

اگر در حین ارزیابی try خطایی رخ دهد، replacement ارزیابی و برمی‌گرداند. در غیر این صورت، مقدار حل‌شده try را برمی‌گرداند.