Gibt es eine Alternative/Abhilfe für Seq.generate_using in Visual Studio 2010? Die FSharp.PowerPack.dll ist nicht verfügbar für 2010 AFAIKF # 2010 Seq.generate_using
2
A
Antwort
3
FYI, die Power Binärdateien für .Net 4.0 Beta1 kam heute online:
5
(Tut mir leid, das Powerpack noch nicht für das Jahr 2010 noch zur Verfügung steht.)
Ich erinnere mich nicht, ob dies bereits gilt für das CTP-Update, aber in internen Bits bekomme ich die Warnung:
Dieses Konstrukt ist veraltet. Diese Funktion wird in einer zukünftigen Version entfernt. Falls erforderlich, nehmen Sie eine Kopie deren Umsetzung von der # Powerpack F und kopieren Sie sie in Ihre Anwendung
so hier ist der Code aus dem Powerpack:
#nowarn "9"
namespace Microsoft.FSharp.Compatibility
open System.Collections.Generic
module Seq =
let combine ie1 ie2 = Seq.zip ie1 ie2
let nonempty (ie : seq<'T>) = use e = ie.GetEnumerator() in e.MoveNext() //'
let generate openf compute closef =
seq { let r = openf()
try
let x = ref None
while (x := compute r; (!x).IsSome) do
yield (!x).Value
finally
closef r }
let generate_using (openf : unit -> ('b :> System.IDisposable)) compute = //'
generate openf compute (fun (s:'b) -> s.Dispose()) //'
let cons (x:'T) (s: seq<'T>) =
seq { yield x
yield! s }
dank, Brian, wirkt wie ein Zauber! – ninegrid