QuotationEvaluation
Namespace: FSharpx.Linq
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.
Nested types and modules
Module | Description |
HelperTypes
|
A set of types used for implementing quotation conversions.
These are public only because targets of Linq Lambda expressions require them to be so
|
Functions and values
Function or value | Description |
LinqExpressionHelper arg1
Signature: 'T -> Expression<'T>
Type parameters: 'T
|
This function should not be called directly.
|
Type extensions
Type extension | Description |
Compile()
Signature: unit -> unit -> 'T
|
Compile 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`1.Compile
|
CompileUntyped()
Signature: unit -> unit -> obj
|
Compile 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
|
Eval()
Signature: unit -> 'T
|
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`1.Eval
|
EvalUntyped()
Signature: unit -> obj
|
Compile 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.EvalUntyped
|
ToLinqExpression()
Signature: unit -> Expression
|
Convert the quotation expression to LINQ expression trees
This operation will only succeed for a subset of quotation expressions.
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.ToLinqExpression
|