लिटरल वैल्यू

ब्यौरा

यह फ़ंक्शन, पहले से तय किए गए दस्तावेज़ ऑब्जेक्ट के सेट से दस्तावेज़ दिखाता है.

आम तौर पर, इस स्टेज का इस्तेमाल अन्य स्टेज को अलग-अलग टेस्ट करने के लिए किया जाता है. हालांकि, इसका इस्तेमाल जॉइन की शर्तों के लिए इनपुट के तौर पर भी किया जा सकता है.

सिंटैक्स

Node.js

const results = await db.pipeline()
  .literals({ name: "joe", age: 10 }, { name: "bob", age: 30 }, { name: "alice", age: 40 })
  .where(field("age").lessThan(35))
  .execute();

...

[
  { name: "joe", age: 10 },
  { name: "bob", age: 30 }
]

व्यवहार

literals(...) स्टेज का इस्तेमाल, पाइपलाइन (या सब-पाइपलाइन) में सिर्फ़ पहले स्टेज के तौर पर किया जा सकता है. literals से मिले दस्तावेज़ों का क्रम, उनके तय किए जाने के क्रम से मेल खाता है.

लिटरल वैल्यू का इस्तेमाल सबसे ज़्यादा किया जाता है. हालांकि, एक्सप्रेशन भी पास किए जा सकते हैं. इनका आकलन किया जाएगा और इन्हें वापस कर दिया जाएगा. इससे, कुछ टेस्ट डेटा बनाए बिना ही, अलग-अलग क्वेरी या एक्सप्रेशन के व्यवहार को टेस्ट किया जा सकता है.

उदाहरण के लिए, यहां कुछ कॉन्स्टेंट टेस्ट सेट पर length(...) फ़ंक्शन को तुरंत आज़माने का तरीका बताया गया है:

Node.js

const results = await db.pipeline()
  .literals({ x: constant("foo-bar-baz").length() }, { x: constant("bar").length() })
  .execute();

...

[
  { x: 11 },
  { x: 3 }
]