Skip to content

Commit f930185

Browse files
authored
Rename non-sequential applicative CEs to zapp (#650)
1 parent b42d346 commit f930185

File tree

2 files changed

+13
-4
lines changed

2 files changed

+13
-4
lines changed

src/FSharpPlus/Builders.fs

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -254,13 +254,22 @@ module GenericBuilders =
254254
/// Creates a (sequential) applicative computation expression which compose effects of three Applicatives.
255255
let applicative3<'``Applicative1<Applicative2<Applicative3<'T>>>``> = ApplicativeBuilder3<'``Applicative1<Applicative2<Applicative3<'T>>>``> ()
256256

257-
/// Creates a (non sequential) applicative computation expression.
257+
[<ObsoleteAttribute("This value is obsolete. Use zapp instead.", false)>]
258258
let applicative'<'``ZipApplicative<'T>``> = ZipApplicativeBuilder<'``ZipApplicative<'T>``> ()
259259

260-
/// Creates a (non sequential) applicative computation expression which compose effects of two Applicatives.
260+
[<ObsoleteAttribute("This value is obsolete. Use zapp2 instead.", false)>]
261261
let applicative2'<'``ZipApplicative1<ZipApplicative2<'T>>``> = ZipApplicativeBuilder2<'``ZipApplicative1<ZipApplicative2<'T>>``> ()
262262

263-
/// Creates a (non sequential) applicative computation expression which compose effects of three Applicatives.
263+
[<ObsoleteAttribute("This value is obsolete. Use zapp3 instead.", false)>]
264264
let applicative3'<'``Applicative1<Applicative2<Applicative3<'T>>>``> = ZipApplicativeBuilder3<'``Applicative1<Applicative2<Applicative3<'T>>>``> ()
265265

266+
/// Creates a (non sequential) applicative computation expression.
267+
let zapp<'``ZipApplicative<'T>``> = ZipApplicativeBuilder<'``ZipApplicative<'T>``> ()
268+
269+
/// Creates a (non sequential) applicative computation expression which compose effects of two Applicatives.
270+
let zapp2<'``ZipApplicative1<ZipApplicative2<'T>>``> = ZipApplicativeBuilder2<'``ZipApplicative1<ZipApplicative2<'T>>``> ()
271+
272+
/// Creates a (non sequential) applicative computation expression which compose effects of three Applicatives.
273+
let zapp3<'``ZipApplicative1<ZipApplicative2<ZipApplicative3<'T>>>``> = ZipApplicativeBuilder3<'``ZipApplicative1<ZipApplicative2<ZipApplicative3<'T>>>``> ()
274+
266275
#endif

tests/FSharpPlus.Tests/Applicatives.fs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ module Applicatives =
2020

2121
[<Test>]
2222
let zipApply () =
23-
let arr1 = applicative2' {
23+
let arr1 = zapp2 {
2424
let! x1 = async { return [|1; 2; 3|] }
2525
and! x2 = async { return [|10; 20; 30|] }
2626
and! x3 = async { return [|100; 200; 300|] }

0 commit comments

Comments
 (0)