是否记录了双向前/后管道操作员?

时间:2010-05-19 16:49:07

标签: f#

我记得读过双管操作符 - ||>和< || - 在某个地方,现在我不记得在哪里。我在MSDN或语言规范中找不到它们。它们是否记录在任何地方?

实施例

let print a b = sprintf "%O %O" a b
(1, 2) ||> print
// val it : string = "1 2"

2 个答案:

答案 0 :(得分:6)

Double(向前/向后)管道运算符记录在F# operators on MSDN列表中,并且还记录为从Core.Operators module导出的函数。

这可能是从F#源中的XML文档自动生成的,因此这些页面的名称有些神秘:

作为旁注,使用搜索引擎查找运营商有点问题,因此我查看了F#源(随CTP发布一起分发),prim-types.fs包含以下内容:

/// <summary>Apply a function to two values, the 
///   values being a pair on the left, the function on the right</summary>
/// <param name="arg1">The first argument.</param>
/// <param name="arg2">The second argument.</param>
/// <param name="func">The function.</param>
/// <returns>The function result.</returns>
val inline (||>): arg1:'T1 * arg2:'T2 -> func:('T1 -> 'T2 -> 'U) -> 'U

我打算推荐F#来源作为这种事情的好文档(他们当然是这样),但后来我将部分<summary>标签粘贴到谷歌并找到了上面提到的页面: - 。)

答案 1 :(得分:1)

请参阅@Tomas的回答。关键方面是这些只是库中的函数,所以你想查看库文档(Core.Operators包含这些人)。