File tree Expand file tree Collapse file tree
src/FSharp.Control.AsyncSeq Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -1659,14 +1659,12 @@ module AsyncSeq =
16591659
16601660
16611661
1662- type private Group < 'k , 'a > = { key : 'k ; src : AsyncSeqSrc < 'a > }
1663-
16641662 let groupByAsync ( p : 'a -> Async < 'k >) ( s : AsyncSeq < 'a >) : AsyncSeq < 'k * AsyncSeq < 'a >> = asyncSeq {
1665- let groups = Collections.Generic.Dictionary< 'k, Group < 'k , 'a>>()
1663+ let groups = Collections.Generic.Dictionary< 'k, AsyncSeqSrc < 'a>>()
16661664 let close group =
1667- AsyncSeqSrcImpl.close group.src
1665+ AsyncSeqSrcImpl.close group
16681666 let closeGroups () =
1669- groups.Values |> Seq.iter close
1667+ groups.Values |> Seq.iter close
16701668 use enum = s.GetEnumerator()
16711669 let rec go () = asyncSeq {
16721670 try
@@ -1677,13 +1675,13 @@ module AsyncSeq =
16771675 let! key = p a
16781676 let mutable group = Unchecked.defaultof<_>
16791677 if groups.TryGetValue( key, & group) then
1680- AsyncSeqSrcImpl.put a group.src
1678+ AsyncSeqSrcImpl.put a group
16811679 yield ! go ()
16821680 else
16831681 let src = AsyncSeqSrcImpl.create ()
16841682 let subSeq = src |> AsyncSeqSrcImpl.toAsyncSeq
16851683 AsyncSeqSrcImpl.put a src
1686- let group = { key = key ; src = src }
1684+ let group = src
16871685 groups.Add( key, group)
16881686 yield key, subSeq
16891687 yield ! go ()
You can’t perform that action at this time.
0 commit comments