FSharp.Quotations.Evaluator


QuotationEvaluationExtensions

Namespace: FSharp.Quotations.Evaluator
Attributes:
[<AutoOpen>]

This module provides Compile and Eval extension members for F# quotation values, implemented by translating to LINQ expression trees and using the LINQ dynamic compiler.

Type extensions

Type extensionDescription
x.Compile()
Signature: unit -> 'T

Compile and evaluate the quotation expression by first converting to LINQ expression trees. The expression is currently always compiled.

Exceptions: InvalidArgumentException will be raised if the input expression is not in the subset that can be converted to a LINQ expression tree

CompiledName: Expr`1.Compile

x.CompileUntyped()
Signature: unit -> obj

Compile and evaluate the quotation expression by first converting to LINQ expression trees.

Exceptions: InvalidArgumentException will be raised if the input expression is not in the subset that can be converted to a LINQ expression tree

CompiledName: Expr.CompileUntyped

x.Evaluate()
Signature: unit -> 'T

Evaluate the quotation expression by first converting to LINQ expression trees. The expression is currently always compiled.

Exceptions: InvalidArgumentException will be raised if the input expression is not in the subset that can be converted to a LINQ expression tree

CompiledName: Expr`1.Evaluate

x.EvaluateUntyped()
Signature: unit -> obj

Evaluate the quotation expression by first converting to LINQ expression trees. The expression is currently always compiled.

Exceptions: InvalidArgumentException will be raised if the input expression is not in the subset that can be converted to a LINQ expression tree

CompiledName: Expr.EvaluateUntyped

x.ToLinqExpressionUntyped()
Signature: unit -> Expression

Convert the quotation expression to a LINQ expression tree.

Exceptions: InvalidArgumentException will be raised if the input expression is not in the subset that can be converted to a LINQ expression tree

CompiledName: Expr.ToLinqExpressionUntyped

F# Project
Fork me on GitHub