Skip to content

Commit d59128e

Browse files
committed
allow unit
1 parent 5a70437 commit d59128e

3 files changed

Lines changed: 12 additions & 3 deletions

File tree

src/FSharp.Control.AsyncSeq/AsyncSeq.fs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ module AsyncSeq =
136136
// do! something
137137
//
138138
// because F# translates body as Bind(something, fun () -> Return())
139-
member x.Return() = empty
139+
member x.Return _ = empty
140140
member x.YieldFrom(s) = s
141141
member x.Zero () = empty
142142
member x.Bind (inp:Async<'T>, body : 'T -> AsyncSeq<'U>) : AsyncSeq<'U> =

src/FSharp.Control.AsyncSeq/AsyncSeq.fsi

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ module AsyncSeq =
5959
member For : seq:AsyncSeq<'T> * action:('T -> AsyncSeq<'TResult>) -> AsyncSeq<'TResult>
6060

6161
/// Implements "return" for the asyncSeq computation builder.
62-
member Return : unit -> AsyncSeq<'T>
62+
member Return : 'unit -> AsyncSeq<'T>
6363

6464
/// Implements "try-finally" for the asyncSeq computation builder.
6565
member TryFinally : body:AsyncSeq<'T> * compensation:(unit -> unit) -> AsyncSeq<'T>

tests/FSharp.Control.AsyncSeq.Tests/AsyncSeqTests.fs

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -293,4 +293,13 @@ let ``AsyncSeq.skipUntil should not skip with completed signal``() =
293293
[<Test>]
294294
let ``AsyncSeq.skipUntil should skip everything with never signal``() =
295295
let actual = [1;2;3;4] |> AsyncSeq.ofSeq |> AsyncSeq.skipUntil AsyncOps.never
296-
Assert.True(EQ AsyncSeq.empty actual)
296+
Assert.True(EQ AsyncSeq.empty actual)
297+
298+
[<Test>]
299+
let ``AsyncSeq.while should allow do at end``() =
300+
let s1 = asyncSeq {
301+
while false do
302+
yield 1
303+
do! Async.Sleep 10
304+
}
305+
Assert.True(true)

0 commit comments

Comments
 (0)