Quotations.Expr 类 (F#)

使用 Type 值注释的带引号的表达式。

命名空间/模块路径: Microsoft.FSharp.Quotations

程序集:FSharp.Core(在 FSharp.Core.dll 中)

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

备注

此类型在编译的程序集中名为 FSharpExpr。如果从 F# 以外的 .NET 语言中访问类型,或通过反射访问类型,请使用此名称。

实例成员

成员

说明

CustomAttributes

返回表达式的自定义特性。

GetFreeVars

以列表的形式获取表达式的自由表达式变量。

Substitute

通过使用给定函数将变量映射到新值的给定表达式进行替换。这些函数在每次应用时的结果都必须一致。如果执行变量捕获,则目标表达式可能发生变量重命名。

ToString

格式化该表达式作为字符串。

类型

返回表达式的类型。

静态成员

成员

说明

AddressOf

创建一个表示获取值地址的表达式。

AddressSet

创建一个表达式,该表达式表示设置特定地址处保存的值。

Application

创建一个表达式,它表示将一个一类函数值应用于单个参数。

应用程序

创建一个表达式,它表示将一个一类函数值应用于多个参数。

Call

创建一个表达式,它表示对与对象相关联的实例方法的调用。

Cast

在给定基础运行时类型化表达式时返回一个新的类型化表达式。使用此函数时通常需要类型批注,使用不正确的类型批注可能会导致以后引发运行时异常。

Coerce

创建一个表达式,用于表示表达式到类型的强制转换。

DefaultValue

创建一个表达式,该表达式表示对默认对象构造函数的调用。

Deserialize

当使用引用语法 (<@ @>) 及相关的类型化表达式引用时,将自动调用此函数。字节是未链接形式的引用表达式的备用二进制表示形式,Type 自变量是引用表达式所在程序集中的任何类型,即用它以字节为单位来定义交叉程序集引用的释义范围。

FieldGet

创建一个表达式,该表达式表示对对象字段的访问。

FieldSet

创建一个表示写入对象的字段的表达式。

ForIntegerRangeLoop

创建表示整数范围内循环的 for 表达式。

GlobalVar

从按名称和类型进行索引的共享变量的全局池中,获取或创建一个具有给定名称和类型的新变量。类型由显式或推断的类型参数指定

IfThenElse

创建 if...then...else 表达式。

Lambda

创建一个表示构造 F# 函数值的表达式。

Let

创建与let构造关联的表达式。

LetRecursive

创建与 let rec 构造关联的递归表达式。

NewArray

创建一个表达式,该表达式表示创建一个数组,并用给定元素进行初始化。

NewDelegate

创建一个表示创建给定类型的委托值的表达式。

NewObject

创建一个表达式,该表达式表示对对象构造函数的调用。

NewRecord

创建记录构造表达式。

NewTuple

创建一个表示创建 F# 元组值的表达式。

NewUnionCase

创建一个表示创建联合用例值的表达式。

PropertyGet

创建一个表示读取静态属性的表达式。

PropertySet

创建一个表示写入静态属性的表达式。

Quote

创建表示嵌套引用文本的表达式。

RegisterReflectedDefinitions

允许交互环境(例如 F# Interactive)显式注册表示持久顶级定义的新建资源。字符串指示所添加资源的唯一名称。字节的格式是 F# 编译器所生成的编码。

顺序

创建一个表达式,该表达式表示顺序执行两个前后相连的表达式。

TryFinally

创建表示try...finally构造的表达式。

TryGetReflectedDefinition

尝试查找给定方法的存储反射定义。通过使用 ReflectedDefinition 属性将存储反射定义添加到 F# 程序集中。

TryWith

创建用于筛选和捕获异常的表示 try...with 构造的表达式。

TupleGet

创建一个表达式,该表达式表示获取元组的字段。

TypeTest

创建表示测试类型的表达式。

UnionCaseTest

创建一个表达式,该表达式表示对某个值的测试是否属于特定联合用例。

创建一个表示常量值的表达式。

创建一个表示特定类型的常量值的表达式。

Var

创建表示变量的表达式

VarSet

创建一个表示设置可变变量的表达式。

WhileLoop

创建表示 while 循环的表达式。

平台

Windows 8,Windows 7,Windows server 2012中,Windows server 2008 R2

版本信息

F#核心库版本

支持:2.0,4.0,可移植

请参见

参考

Microsoft.FSharp.Quotations 命名空间 (F#)