Query
Query( lambda )
Query( lambda )
Query( lambda )
Query( lambda )
query( lambda )
Query( lambda )
Description
The Query
function wraps the provided
Lambda
function, preventing immediate
execution, and making the function available for use in
index bindings,
user-defined functions, and
ABAC predicates.
For example, when creating a named function with
CreateFunction
, Query
defers
execution of the Lambda
function until the
Call
function is called.
While you can use a Query
in a Let
binding, it is not possible to call the bound function. You also cannot
use a Query
instead of a lambda function, such as with
Map
or
Reduce
.
Two functions are considered equal if their syntax is identical. For example:
|
Parameters
Argument | Type | Definition and Requirements |
---|---|---|
|
A |
The |
Examples
The following query returns the provided Lambda
function wrapped in
the Query
wrapper:
Value result = await client.Query(
Query(Lambda("X", Var("X")))
);
QueryV(System.Collections.Generic.Dictionary`2[System.String,FaunaDB.Query.Expr])
result, err := client.Query(
f.Query(f.Lambda("X", f.Var("X"))))
if err != nil {
fmt.Fprintln(os.Stderr, err)
} else {
fmt.Println(result)
}
{[123 34 97 112 105 95 118 101 114 115 105 111 110 34 58 34 51 34 44 34 108 97 109 98 100 97 34 58 34 88 34 44 34 101 120 112 114 34 58 123 34 118 97 114 34 58 34 88 34 125 125]}
System.out.println(
client.query(
Query(Lambda("X", Var("X")))
).get());
QueryV({lambda=X, expr={var=X}})
client.query(
q.Query(q.Lambda('X', q.Var('X')))
)
.then((ret) => console.log(ret))
.catch((err) => console.error('Error: %s', err))
Query(Lambda("X", Var("X")))
result = client.query(
q.query(q.lambda_("X", q.var("X")))
)
print(result)
Query({'api_version': '3', 'lambda': 'X', 'expr': {'var': 'X'}})
println(Await.result(
client.query(
Query(Lambda("X", Var("X")))
),
5.seconds
))
{api_version: "3", lambda: "X", expr: {var: "X"}}
Is this article helpful?
Tell Fauna how the article can be improved:
Visit Fauna's forums
or email docs@fauna.com
Thank you for your feedback!