Skip to main content

RowExpression.From

Returns the abstract syntax tree (AST) for the body of a function.

Syntax

RowExpression.From(
function as function
) as record

Remarks

Returns the abstract syntax tree (AST) for the body of function, normalized into a row expression:

  • The function must be a 1-argument lambda.
  • All references to the function parameter are replaced with RowExpression.Row.
  • All references to columns are replaced with RowExpression.Column(columnName).
  • The AST will be simplified to contain only nodes of the kinds:
    • Constant
    • Invocation
    • Unary
    • Binary
    • If
    • FieldAccess


An error is raised if a row expression AST cannot be returned for the body of function.

Examples

Example #1

Returns the AST for the body of the function <code>each [CustomerID] = "ALFKI"</code>

RowExpression.From(each [CustomerName] = "ALFKI")

Result:

[
Kind = "Binary",
Operator = "Equals",
Left = RowExpression.Column("CustomerName"),
Right =
[
Kind = "Constant",
Value = "ALFKI"
]
]

Category

Table.Table construction