用序列包装可变集合

Dan*_*iel 3 collections ienumerable f#

偶尔,我想从函数中返回一个可变集合作为序列.上传到seq<_>作品,但序列可以被下调和修改(通常不重要).我通常的解决方案是使用wrap-as-a-sequence函数,它产生了以下结果:

let wrap items = Seq.map id
let wrapDict dict = Seq.map ((|KeyValue|) >> snd)
Run Code Online (Sandbox Code Playgroud)

主要是出于好奇(和乐趣),编写这些函数的其他方式是什么,可能是以更惯用,简洁或高效的方式?

Ste*_*sen 5

Seq.readonly是您正在寻找的功能.