Skip to content

Commit

Permalink
Transform functions documentation
Browse files Browse the repository at this point in the history
  • Loading branch information
1eyewonder authored and TheAngryByrd committed Jul 14, 2023
1 parent 7bad77c commit 2807702
Show file tree
Hide file tree
Showing 33 changed files with 817 additions and 64 deletions.
71 changes: 43 additions & 28 deletions gitbook/SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@
* [map2](result/map2.md)
* [map3](result/map3.md)
* [mapError](result/mapError.md)
* [ofChoice](result/ofChoice.md)
* [Operators](result/operators.md)
* [orElse Functions](result/orElseFunctions.md)
* [Other Functions](result/others.md)
Expand All @@ -26,20 +25,25 @@
* [sequenceResultM](list/sequenceResultM.md)
* [traverseResultA](list/traverseResultA.md)
* [sequenceResultA](list/sequenceResultA.md)
* Transforms
* [ofChoice](result/ofChoice.md)

* Option
* [bind](pr.md)
* [bindNull](pr.md)
* [Computation Expression](option/ce.md)
* [either](pr.md)
* [map](pr.md)
* [ofPair](pr.md)
* [ofValueOption](pr.md)
* [toValueOption](pr.md)
* [zip](pr.md)
* Lists
* [traverseResult](option/traverseResult.md)
* [sequenceResult](option/sequenceResult.md)
* Transforms
* [ofNull](option/ofNull.md)
* [ofPair](option/ofPair.md)
* [ofResult](option/ofResult.md)
* [ofValueOption](option/ofValueOption.md)
* [toValueOption](option/toValueOption.md)

* ResultOption
* [apply](resultOption/apply.md)
Expand All @@ -50,12 +54,13 @@
* [map2](resultOption/map2.md)
* [map3](resultOption/map3.md)
* [mapError](pr.md)
* [ofResult](pr.md)
* [ofOption](pr.md)
* [ofChoice](pr.md)
* [Operators](resultOption/operators.md)
* [zip](resultOption/zip.md)
* [zipError](resultOption/zipError.md)
* Transforms
* [ofChoice](resultOption/ofChoice.md)
* [ofOption](resultOption/ofOption.md)
* [ofResult](resultOption/ofResult.md)

* AsyncResult
* [apply](asyncResult/apply.md)
Expand All @@ -68,10 +73,6 @@
* [map2](asyncResult/map2.md)
* [map3](asyncResult/map3.md)
* [mapError](asyncResult/mapError.md)
* [ofAsync](pr.md)
* [ofResult](pr.md)
* [ofTask](asyncResult/ofTask.md)
* [ofTaskAction](asyncResult/ofTaskAction.md)
* [Operators](asyncResult/operators.md)
* [Other Functions](asyncResult/others.md)
* [zip](pr.md)
Expand All @@ -81,6 +82,11 @@
* [sequenceAsyncResultM](list/sequenceAsyncResultM.md)
* [traverseAsyncResultA](list/traverseAsyncResultA.md)
* [sequenceAsyncResultA](list/sequenceAsyncResultA.md)
* Transforms
* [ofAsync](asyncResult/ofAsync.md)
* [ofResult](asyncResult/ofResult.md)
* [ofTask](asyncResult/ofTask.md)
* [ofTaskAction](asyncResult/ofTaskAction.md)

* AsyncResultOption
* [apply](asyncResultOption/apply.md)
Expand All @@ -90,11 +96,12 @@
* [map](asyncResultOption/map.md)
* [map2](asyncResultOption/map2.md)
* [map3](asyncResultOption/map3.md)
* [ofAsyncOption](pr.md)
* [ofAsyncResult](pr.md)
* [ofOption](pr.md)
* [ofResult](pr.md)
* [Operators](asyncResultOption/operators.md)
* Transforms
* [ofAsyncOption](asyncResultOption/ofAsyncOption.md)
* [ofAsyncResult](asyncResultOption/ofAsyncResult.md)
* [ofOption](asyncResultOption/ofOption.md)
* [ofResult](asyncResultOption/ofResult.md)

* [Validation](validation/index.md)
* [apply](validation/apply.md)
Expand All @@ -105,11 +112,12 @@
* [map3](validation/map3.md)
* [mapError](pr.md)
* [mapErrors](pr.md)
* [ofChoice](pr.md)
* [ofResult](validation/ofResult.md)
* [Operators](validation/operators.md)
* [returnError](pr.md)
* [zip](pr.md)
* Transforms
* [ofChoice](validation/ofChoice.md)
* [ofResult](validation/ofResult.md)

* [AsyncValidation](asyncValidation/index.md)
* [apply](asyncValidation/apply.md)
Expand All @@ -120,11 +128,12 @@
* [map3](asyncValidation/map3.md)
* [mapError](pr.md)
* [mapErrors](pr.md)
* [ofChoice](pr.md)
* [ofResult](asyncValidation/ofResult.md)
* [Operators](asyncValidation/operators.md)
* [returnError](pr.md)
* [zip](pr.md)
* Transforms
* [ofChoice](asyncValidation/ofChoice.md)
* [ofResult](asyncValidation/ofResult.md)

* FsToolkit.ErrorHandling.AsyncSeq
* AsyncSeq
Expand Down Expand Up @@ -153,11 +162,12 @@
* [map3](cancellableTaskValidation/map3.md)
* [mapError](pr.md)
* [mapErrors](pr.md)
* [ofChoice](pr.md)
* [ofResult](pr.md)
* [Operators](cancellableTaskValidation/operators.md)
* [zip](pr.md)
* [parallelZip](pr.md)
* Transforms
* [ofChoice](cancellableTaskValidation/ofChoice.md)
* [ofResult](cancellableTaskValidation/ofResult.md)

* FsToolkit.ErrorHandling.JobResult
* Job
Expand Down Expand Up @@ -187,10 +197,6 @@
* [map2](jobResult/map2.md)
* [map3](jobResult/map3.md)
* [mapError](jobResult/mapError.md)
* [ofAsync](pr.md)
* [ofJob](pr.md)
* [ofResult](pr.md)
* [ofTask](jobResult/ofTask.md)
* [Operators](jobResult/operators.md)
* [Other Functions](jobResult/others.md)
* [returnError](pr.md)
Expand All @@ -201,6 +207,12 @@
* [sequenceJobResultM](pr.md)
* [traverseJobResultA](pr.md)
* [sequenceJobResultA](pr.md)
* Transforms
* [ofAsync](jobResult/ofAsync.md)
* [ofJob](jobResult/ofJob.md)
* [ofResult](jobResult/ofResult.md)
* [fromTask](jobResult/fromTask.md)
* [fromUnitTask](jobResult/fromUnitTask.md)

* JobResultOption
* [apply](pr.md)
Expand All @@ -225,6 +237,8 @@
* [map3](pr.md)
* [ofUnit](pr.md)
* [zip](pr.md)
* Transforms
* [ofUnit](task/ofUnit.md)

* TaskOption
* [apply](pr.md)
Expand All @@ -245,9 +259,6 @@
* [map2](taskResult/map2.md)
* [map3](taskResult/map3.md)
* [mapError](taskResult/mapError.md)
* [ofAsync](pr.md)
* [ofResult](pr.md)
* [ofTask](pr.md)
* [Operators](taskResult/operators.md)
* [Other Functions](taskResult/others.md)
* [returnError](pr.md)
Expand All @@ -258,6 +269,10 @@
* [sequenceTaskResultM](list/sequenceTaskResultM.md)
* [traverseTaskResultA](list/traverseTaskResultA.md)
* [sequenceTaskResultA](list/sequenceTaskResultA.md)
* Transforms
* [ofAsync](taskResult/ofAsync.md)
* [ofResult](taskResult/ofResult.md)
* [ofTask](taskResult/ofTask.md)

* TaskResultOption
* [apply](taskResultOption/apply.md)
Expand Down
20 changes: 20 additions & 0 deletions gitbook/asyncResult/ofAsync.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# AsyncResult.ofAsync

Namespace: `FsToolkit.ErrorHandling`

Transforms a `Async<'T>` into an `Async<Result<'T, 'Error>>`.

## Function Signature

```fsharp
Async<'T> -> Async<Result<'T, 'Error>>
```

## Examples

### Example 1

```fsharp
let result = AsyncResult.ofAsync (async { return 42 })
// async { return Ok 42 }
```
27 changes: 27 additions & 0 deletions gitbook/asyncResult/ofResult.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# AsyncResult.ofResult

Namespace: `FsToolkit.ErrorHandling`

Transforms a `Result<'T, 'Error>` into an `Async<Result<'T, 'Error>>`.

## Function Signature

```fsharp
Result<'T, 'Error> -> Async<Result<'T, 'Error>>
```

## Examples

### Example 1

```fsharp
let result = AsyncResult.ofResult (Ok 42)
// async { return Ok 42 }
```

### Example 2

```fsharp
let result = AsyncResult.ofResult (Error "Boom!")
// async { return Error "Boom!" }
```
21 changes: 18 additions & 3 deletions gitbook/asyncResult/ofTask.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,27 @@
## AsyncResult.ofTask
# AsyncResult.ofTask

Namespace: `FsToolkit.ErrorHandling`

Function Signature:
Transforms a `Task<'T>` into an `Async<Result<'T, 'Error>>`.

## Function Signature

```fsharp
Task<'a> -> Async<Result<'a, Exception>>
Task<'T> -> Async<Result<'T, 'Error>>
```

## Examples

### Example 1

```fsharp
let result = AsyncResult.ofTask (Task.FromResult 42)
// async { return Ok 42 }
```

### Example 2

```fsharp
let result = AsyncResult.ofTask (Task.FromException (System.Exception("Boom!")))
// async { return Error (System.Exception("Boom!")) }
```
21 changes: 18 additions & 3 deletions gitbook/asyncResult/ofTaskAction.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,27 @@
## AsyncResult.ofTaskAction
# AsyncResult.ofTaskAction

Namespace: `FsToolkit.ErrorHandling`

Function Signature:
Transforms a `Task` into an `Async<Result<unit, 'Error>>`.

## Function Signature

```fsharp
Task -> Async<Result<unit, Exception>>
Task -> Async<Result<unit, 'Error>>
```

## Examples

### Example 1

```fsharp
let result = AsyncResult.ofTaskAction (Task.Delay 1000)
// async { do () }
```

### Example 2

```fsharp
let result = AsyncResult.ofTaskAction (Task.FromException (System.Exception("Boom!")))
// async { return Error (System.Exception("Boom!")) }
```
27 changes: 27 additions & 0 deletions gitbook/asyncResultOption/ofAsyncOption.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# AsyncResultOption.ofAsyncOption

Namespace: `FsToolkit.ErrorHandling`

Transforms a `Async<'T option>` into an `Async<Result<'T option, 'Error>>`.

## Function Signature

```fsharp
Async<'T option> -> Async<Result<'T option, 'Error>>
```

## Examples

### Example 1

```fsharp
let result = AsyncResultOption.ofAsyncOption (async { return Some 42 })
// async { return Ok (Some 42) }
```

### Example 2

```fsharp
let result = AsyncResultOption.ofAsyncOption (async { return None })
// async { return Ok None }
```
27 changes: 27 additions & 0 deletions gitbook/asyncResultOption/ofAsyncResult.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# AsyncResultOption.ofAsyncResult

Namespace: `FsToolkit.ErrorHandling`

Transforms a `Async<Result<'T, 'Error>>` into an `Async<Result<'T option, 'Error>>`.

## Function Signature

```fsharp
Async<Result<'T, 'Error>> -> Async<Result<'T option, 'Error>>
```

## Examples

### Example 1

```fsharp
let result = AsyncResult.ofAsyncResult (async { return Ok 42 })
// async { return Ok (Some 42) }
```

### Example 2

```fsharp
let result = AsyncResult.ofAsyncResult (async { return Error "error" })
// async { return Error "error" }
```
27 changes: 27 additions & 0 deletions gitbook/asyncResultOption/ofOption.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# AsyncResultOption.ofOption

Namespace: `FsToolkit.ErrorHandling`

Transforms a `'T option` into an `Async<Result<'T option, 'Error>>`.

## Function Signature

```fsharp
'T option -> Async<Result<'T option, 'Error>>
```

## Examples

### Example 1

```fsharp
let result = AsyncResultOption.ofOption (Some 42)
// async { return Ok (Some 42) }
```

### Example 2

```fsharp
let result = AsyncResultOption.ofOption None
// async { return Ok None }
```

0 comments on commit 2807702

Please sign in to comment.