Table of contents
TOC
Collapse the table of content
Expand the table of content

Quotations.Expr Class (F#)

Den Delimarsky|Last Updated: 7/25/2016
|
1 Contributor

Quoted expressions annotated with System.Type values.

Namespace/Module Path: Microsoft.FSharp.Quotations

Assembly: FSharp.Core (in FSharp.Core.dll)

Syntax

type Expr =
class
static member AddressOf : Expr -> Expr
static member AddressSet : Expr * Expr -> Expr
static member Application : Expr * Expr -> Expr
static member Applications : Expr * Expr list list -> Expr
static member Call : Expr * MethodInfo * Expr list -> Expr
static member Call : MethodInfo * Expr list -> Expr
static member Cast : Expr -> Expr<'T>
static member Coerce : Expr * Type -> Expr
static member DefaultValue : Type -> Expr
static member Deserialize : Type * Type list * Expr list * byte [] -> Expr
static member FieldGet : Expr * FieldInfo -> Expr
static member FieldGet : FieldInfo -> Expr
static member FieldSet : Expr * FieldInfo * Expr -> Expr
static member FieldSet : FieldInfo * Expr -> Expr
static member ForIntegerRangeLoop : Var * Expr * Expr * Expr -> Expr
member this.GetFreeVars : unit -> seq<Var>
static member GlobalVar : string -> Expr<'T>
static member IfThenElse : Expr * Expr * Expr -> Expr
static member Lambda : Var * Expr -> Expr
static member Let : Var * Expr * Expr -> Expr
static member LetRecursive : Var * Expr list * Expr -> Expr
static member NewArray : Type * Expr list -> Expr
static member NewDelegate : Type * Var list * Expr -> Expr
static member NewObject : ConstructorInfo * Expr list -> Expr
static member NewRecord : Type * Expr list -> Expr
static member NewTuple : Expr list -> Expr
static member NewUnionCase : UnionCaseInfo * Expr list -> Expr
static member PropertyGet : PropertyInfo * Expr list option -> Expr
static member PropertyGet : Expr * PropertyInfo * Expr list option -> Expr
static member PropertySet : PropertyInfo * Expr * Expr list option -> Expr
static member PropertySet : Expr * PropertyInfo * Expr * Expr list option -> Expr
static member Quote : Expr -> Expr
static member RegisterReflectedDefinitions : Assembly * string * byte [] -> unit
static member Sequential : Expr * Expr -> Expr
member this.Substitute : (Var -> Expr option) -> Expr
member this.ToString : bool -> string
static member TryFinally : Expr * Expr -> Expr
static member TryGetReflectedDefinition : MethodBase -> Expr option
static member TryWith : Expr * Var * Expr * Var * Expr -> Expr
static member TupleGet : Expr * int -> Expr
static member TypeTest : Expr * Type -> Expr
static member UnionCaseTest : Expr * UnionCaseInfo -> Expr
static member Value : 'T -> Expr
static member Value : obj * Type -> Expr
static member Var : Var -> Expr
static member VarSet : Var * Expr -> Expr
static member WhileLoop : Expr * Expr -> Expr
member this.CustomAttributes :  Expr list
member this.Type :  Type
end

Remarks

This type is named FSharpExpr in compiled assemblies. If you are accessing the type from a language other than F#, or through reflection, use this name.

Instance Members

MemberDescription
CustomAttributesReturns the custom attributes of an expression.
GetFreeVarsGets the free expression variables of an expression as a list.
SubstituteSubstitutes through the given expression using the given functions to map variables to new values. The functions must give consistent results at each application. Variable renaming may occur on the target expression if variable capture occurs.
ToStringFormats the expression as a string.
TypeReturns type of an expression.

Static Members

MemberDescription
AddressOfCreates an expression that represents getting the address of a value.
AddressSetCreates an expression that represents setting the value held at a particular address.
ApplicationCreates an expression that represents the application of a first class function value to a single argument.
ApplicationsCreates an expression that represents the application of a first class function value to multiple arguments.
CallCreates an expression that represents a call to an instance method associated with an object.
CastReturns a new typed expression given an underlying runtime-typed expression. A type annotation is usually required to use this function, and using an incorrect type annotation may result in a later runtime exception.
CoerceCreates an expression that represents the coercion of an expression to a type
DefaultValueCreates an expression that represents the invocation of a default object constructor
DeserializeThis function is called automatically when quotation syntax (<@ @>) and related typed-expression quotations are used. The bytes are a pickled binary representation of an unlinked form of the quoted expression, and the System.Type argument is any type in the assembly where the quoted expression occurs, that is, it helps scope the interpretation of the cross-assembly references in the bytes.
FieldGetCreates an expression that represents the access of a field of an object.
FieldSetCreates an expression that represents writing to a field of an object.
ForIntegerRangeLoopCreates a for expression that represent loops over integer ranges.
GlobalVarFetches or creates a new variable with the given name and type from a global pool of shared variables indexed by name and type. The type is given by the explicit or inferred type parameter.
IfThenElseCreates an if...then...else expression.
LambdaCreates an expression that represents the construction of an F# function value.
LetCreates expressions associated with let constructs.
LetRecursiveCreates recursive expressions associated with let rec constructs.
NewArrayCreates an expression that represents the creation of an array value initialized with the given elements.
NewDelegateCreates an expression that represents the creation of a delegate value for the given type.
NewObjectCreates an expression that represents the invocation of an object constructor.
NewRecordCreates record-construction expressions.
NewTupleCreates an expression that represents the creation of an F# tuple value.
NewUnionCaseCreates an expression that represents the creation of a union case value.
PropertyGetCreates an expression that represents reading a static property.
PropertySetCreates an expression that represents writing to a static property.
QuoteCreates an expression that represents a nested quotation literal.
RegisterReflectedDefinitionsPermits interactive environments such as F# Interactive to explicitly register new pickled resources that represent persisted top level definitions. The string indicates a unique name for the resources being added. The format for the bytes is the encoding generated by the F# compiler.
SequentialCreates an expression that represents the sequential execution of one expression followed by another.
TryFinallyCreates an expression that represents a try...finally construct.
TryGetReflectedDefinitionTry and find a stored reflection definition for the given method. Stored reflection definitions are added to an F# assembly through the use of the ReflectedDefinition attribute.
TryWithCreates an expression that represents a try...with construct for exception filtering and catching.
TupleGetCreates an expression that represents getting a field of a tuple.
TypeTestCreates an expression that represents a type test.
UnionCaseTestCreates an expression that represents a test of a value is of a particular union case.
ValueCreates an expression that represents a constant value.
ValueCreates an expression that represents a constant value of a particular type.
VarCreates an expression that represents a variable.
VarSetCreates an expression that represents setting a mutable variable.
WhileLoopCreates an expression that represents a while loop.

Platforms

Windows 8, Windows 7, Windows Server 2012, Windows Server 2008 R2

Version Information

F# Core Library Versions

Supported in: 2.0, 4.0, Portable

See Also

Microsoft.FSharp.Quotations Namespace (F#)

© 2016 Microsoft