Core.Operators 模块 (F#)

基本 F# 运算符。 此模块会自动在所有 F# 代码中打开。

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

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

[<AutoOpen>]
module Operators

备注

有关 F# 中运算符的概述,请参见符号和运算符参考 (F#)

模块

模块

说明

模块 Checked

此模块包含带溢出检查的基本算术运算。

模块 OperatorIntrinsics

编译器内部函数组成的模块,用于有效实现 F# 整数范围和动态调用其他 F# 运算符

模块 Unchecked

此模块包含基本运算,这些基本运算不应用运行时和/或静态检查

说明

( !) : 'T ref -> 'T

取消对可变引用单元格的引用。

( % ) : ^T1 -> ^T2 -> ^T3

重载取模运算符。

( &&& ) : ^T -> ^T -> ^T

重载的逻辑 AND 运算符。

( * ) : ^T1 -> ^T2 -> ^T3

重载乘法运算符。

( ** ) : ^T -> ^U -> ^T

重载幂运算符。

( + ) : ^T1 -> ^T2 -> ^T3

重载加法运算符。

( - ) : ^T1 -> ^T2 -> ^T3

重载减法运算符。

( ..) : ^T -> ^T -> seq<^T>

标准重载范围运算符,例如, 用于列表的 [n..m],用于序列的 seq {n..m}

( ....) : ^T -> ^Step -> ^T -> seq<^T>

标准重载跳过范围运算符,例如, 用于列表的[n..skip..m] 和用于序列的 seq {n..skip..m}

( / ) : ^T1 -> ^T2 -> ^T3

重载除法运算符。

( := ) : 'T ref -> 'T -> unit

分配给可变引用单元格。

( < ) : 'T -> 'T -> bool

结构小于比较。

( << ) : ('T2 -> 'T3) -> ('T1 -> 'T2) -> 'T1 -> 'T3

组合两个函数,首先应用右边的函数。

( <<< ) : ^T -> int32 -> ^T

经过重载的按指定位数移位的字节左移运算符。

( <= ) : 'T -> 'T -> bool

结构小于或等于比较。

( <> ) : 'T -> 'T -> bool

结构不相等。

( <| ) : ('T -> 'U) -> 'T -> 'U

将函数应用于一个值;值在右边,函数在左边。

( <|| ) : ('T1 -> 'T2 -> 'U) -> 'T1 * 'T2 -> 'U

将函数应用于两个值;值构成一对在右边,函数在左边。

( <||| ) : ('T1 -> 'T2 -> 'T3 -> 'U) -> 'T1 * 'T2 * 'T3 -> 'U

将函数应用于三个值;值构成三元组在右边,函数在左边。

( = ) : 'T -> 'T -> bool

结构相等。

( > ) : 'T -> 'T -> bool

结构大于。

( >= ) : 'T -> 'T -> bool

结构大于或等于。

( >> ) : ('T1 -> 'T2) -> ('T2 -> 'T3) -> 'T1 -> 'T3

组合两个函数,首先应用左边的函数。

( >>> ) : ^T -> int32 -> ^T

经过重载的按指定位数移位的字节右移运算符。

( @ ) : 'T list -> 'T list -> 'T list

串联两个列表。

( ^ ) : string -> string -> string

连接两个字符串。 也可使用运算符“+”。

( ^^^ ) : ^T -> ^T -> ^T

重载逻辑异或运算符。

( |> ) : 'T1 -> ('T1 -> 'U) -> 'U

将函数应用于一个值;值在左边,函数在右边。

( ||> ) : 'T1 * 'T2 -> ('T1 -> 'T2 -> 'U) -> 'U

将函数应用于两个值;值对在左边,函数在右边。

( ||| ) : ^T -> ^T -> ^T

重载的逻辑或运算符

( |||> ) : 'T1 * 'T2 * 'T3 -> ('T1 -> 'T2 -> 'T3 -> 'U) -> 'U

将函数应用于三个值;三元组值在左边,函数在右边。

( ~+ ) : ^T -> ^T

重载 prefix plus 运算符。

( ~- ) : ^T -> ^T

重载一元求反。

( ~~~ ) : ^T -> ^T

重载逻辑非运算符。

abs : ^T -> ^T

给定数的绝对值。

acos : ^T -> ^T

给定数的反余弦值。

asin : ^T -> ^T

给定数的反正弦值。

atan : ^T -> ^T

给定数的反正切值。

atan2 : ^T1 -> ^T2 -> 'T2

x/y 的反正切值,其中 x 和 y 是分别指定的。

box : 'T -> obj

将强类型值装箱。

byte : ^T -> byte

将参数转换为字节。 这是所有基元数值类型的直接转换。 对于字符串,将使用具有 InvariantCulture 设置的 Parse 来转换输入。 否则,操作需要对输入类型使用适当的静态转换方法。

ceil : ^T -> ^T

给定数的上限。

char : ^T -> char

将参数转换为字符。 根据字符的 UTF-16 编码来转换数字输入。 字符串输入的长度必须恰好为一个字符。 对于其他输入类型,操作需要对输入类型使用适当的静态转换方法。

compare : 'T -> 'T -> int

泛型比较。

cos : ^T -> ^T

给定数的余弦值。

cosh : ^T -> ^T

给定数的双曲余弦值。

decimal : ^T -> decimal

使用用于所有基元数值类型的直接转换方式,将参数转换为 Decimal。 对于字符串,将使用具有 InvariantCulture 设置的 Parse 来转换输入。 否则,操作需要对输入类型使用适当的静态转换方法。

decr : int ref -> unit

递减包含整数的可变引用单元格。

defaultArg : 'T option -> 'T -> 'T

用于为函数实现中的可选参数指定默认值。

enum : int32 -> ^U

将参数转换为特定的 enum 类型。

exit : int -> 'T

如果安全设置允许,则退出当前硬件独立进程,否则引发异常。 调用 Exit

exp : ^T -> ^T

给定数的指数。

失败 : string -> exn

生成 Exception 对象。

failwith : string -> 'T

引发一个 Exception 异常。

float : ^T -> float

将参数转换为 64 位浮点数。 这是所有基元数值类型的直接转换。 对于字符串,将使用具有 InvariantCulture 设置的 Parse 来转换输入。 否则,操作需要对输入类型使用适当的静态转换方法。

float32 : ^T -> float32

将参数转换为 32 位浮点数。 这是所有基元数值类型的直接转换。 对于字符串,将使用具有 InvariantCulture 设置的 Parse 来转换输入。 否则,操作需要对输入类型使用适当的静态转换方法。

floor : ^T -> ^T

给定数的下限。

fst : 'T1 * 'T2 -> 'T1

返回元组的第一个元素,fst (a,b) = a。

hash : 'T -> int

泛型哈希算法,用于根据 = 运算符返回相等项的相等哈希值。 默认情况下,它将对 F# 联合、记录和元组类型使用结构哈希处理,对类型的全部内容进行哈希处理。 可通过为每个类型实现 GetHashCode,按类型对函数的确切行为进行调整。

id : 'T -> 'T

标识函数。

ignore : 'T -> unit

忽略传递的值。 这常用于丢弃计算结果。

incr : int ref -> unit

递增包含整数的可变引用单元格

infinity : float

等效于 PositiveInfinity.

infinityf : float32

等效于 PositiveInfinity.

int : ^T -> int

将参数转换为有符号的 32 位整数。 这是所有基元数值类型的直接转换。 对于字符串,将使用具有 InvariantCulture 设置的 Parse 来转换输入。 否则,操作需要对输入类型使用适当的静态转换方法。

int16 : ^T -> int16

将参数转换为有符号的 16 位整数。 这是所有基元数值类型的直接转换。 对于字符串,将使用具有 InvariantCulture 设置的 Parse 来转换输入。 否则,操作需要对输入类型使用适当的静态转换方法。

int32 : ^T -> int32

将参数转换为有符号的 32 位整数。 这是所有基元数值类型的直接转换。 对于字符串,将使用具有 InvariantCulture 设置的Parse) 来转换输入。 否则,操作需要对输入类型使用适当的静态转换方法。

int64 : ^T -> int64

将参数转换为有符号的 64 位整数。 这是所有基元数值类型的直接转换。 对于字符串,将使用具有 InvariantCulture 设置的 Parse 来转换输入。 否则,操作需要对输入类型使用适当的静态转换方法。

invalidArg : string -> string -> 'T

引发一个 ArgumentException 异常。

invalidOp : string -> 'T

引发一个 InvalidOperationException 异常。

limitedHash : int -> 'T -> int

泛型哈希函数。 此函数与 hash 具有相同的行为,但当达到节点的给定限制时,针对 F# 联合、记录和元组类型的默认结构哈希处理就会停止。 可通过为每个类型实现 GetHashCode,按类型对函数的确切行为进行调整。

lock : 'Lock -> (unit -> 'T) -> 'T

以输入值作为锁,将函数作为互斥区域执行。

log : ^T -> ^T

给定数的自然对数。

log10 : ^T -> ^T

给定数的以 10 为底的对数。

max : 'T -> 'T -> 'T

基于泛型比较的最大值。

min : 'T -> 'T -> 'T

基于泛型比较的最小值。

nan : float

等效于 NaN.

nanf : float32

等效于 NaN.

nativeint : ^T -> nativeint

将参数转换为有符号的本机整数。 这是所有基元数值类型的直接转换。 否则,操作需要对输入类型使用适当的静态转换方法。

not : bool -> bool

对逻辑值求反。

nullArg : string -> 'T

引发 ArgumentNullException 异常。

pown : ^T -> int -> ^T

重载的幂运算符。 对于 x 的 n 个匹配项,如果 n > 0,则等效于 x*...*x。

raise : Exception -> 'T

引发异常。

ref : 'T -> 'T ref

创建可变引用单元格。

reraise : unit -> 'T

再次引发异常。 仅应在处理异常时使用。

round : ^T -> ^T

对给定数进行舍入。

sbyte : ^T -> sbyte

将参数转换为有符号的字节。 这是所有基元数值类型的直接转换。 对于字符串,将使用具有 InvariantCulture 设置的 Parse 来转换输入。 否则,操作需要对输入类型使用适当的静态转换方法。

seq : seq<'T> -> seq<'T>

使用序列表达式语法生成序列。

sign : ^T -> int

给定数的符号。

sin : ^T -> ^T

给定数的正弦值。

sinh : ^T -> ^T

给定数的双曲正弦值。

sizeof : int

返回类型的内部大小(以字节为单位)。 例如,sizeof<int> 返回 4。

snd : 'T1 * 'T2 -> 'T2

返回元组的第二个元素,snd (a,b) = b。

sqrt : ^T -> ^T

给定数的平方根。

stderr : TextWriter

读取属性 Error 的值。

stdin : TextReader

读取属性 In 的值。

stdout : TextWriter

读取属性 Out 的值。

string : ^T -> string

使用 ToString 将参数转换为字符串。

tan : ^T -> ^T

给定数的正切值。

tanh : ^T -> ^T

给定数的双曲正切值。

truncate : ^T -> ^T

重载截断运算符。

typedefof : Type

生成类型定义的 Type 表示形式。 如果输入类型是泛型类型实例化,则返回与所有此类实例化相关联的泛型类型定义。

typeof : Type

生成静态类型 Type 运行时的表示形式。 返回的值仍保留为静态类型。

uint16 : ^T -> uint16

将参数转换为无符号 16 位整数。 这是所有基元数值类型的直接转换。 对于字符串,将使用具有 InvariantCulture 设置的 Parse 来转换输入。 否则,操作需要对输入类型使用适当的静态转换方法。

uint32 : ^T -> uint32

将参数转换为无符号 32 位整数。 这是所有基元数值类型的直接转换。 对于字符串,将使用具有 InvariantCulture 设置的 Parse 来转换输入。 否则,操作需要对输入类型使用适当的静态转换方法。

uint64 : ^T -> uint64

将参数转换为无符号 64 位整数。 这是所有基元数值类型的直接转换。 对于字符串,将使用具有 InvariantCulture 设置的 Parse 来转换输入。 否则,操作需要对输入类型使用适当的静态转换方法。

unativeint : ^T -> nativeint

使用所有基元数值类型的直接转换方式,将参数转换为无符号本机整数。 否则,操作需要对输入类型使用适当的静态转换方法。

unbox : obj -> 'T

将强类型值取消装箱。 box, unbox<'T>(box<'T> a) 的反向运算等于 a。

using : 'T -> ('T -> 'U) -> 'U

完成给定函数后,清理与输入对象相关联的资源。 即使受保护的代码引发异常,也进行清理。

活动模式

活动模式

说明

( |Failure|_| ) : exn -> string option

Exception 对象进行匹配,确切地说,其运行时类型即是 Exception.。

( |KeyValue| ) : KeyValuePair<'Key,'Value> -> 'Key * 'Value

一种活动模式,用于匹配类型 KeyValuePair<TKey, TValue> 的值

平台

Windows 7、Windows Vista SP2、Windows XP SP3、Windows XP x64 SP2、Windows Server 2008 R2、Windows Server 2008 SP2、Windows Server 2003 SP2

版本信息

F# 运行时

受以下版本支持:2.0、4.0

Silverlight

受以下版本支持:3

请参见

参考

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