From d552381ab1e9bd223323348a5943772ed97fe7e8 Mon Sep 17 00:00:00 2001 From: Jordan Kay Date: Mon, 4 Apr 2022 10:42:13 -0400 Subject: [PATCH] Fix typo in README --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 3b786a4..167df4a 100644 --- a/README.md +++ b/README.md @@ -67,7 +67,7 @@ func valueB() async throws -> ValueB { Already we can see that with a more complicated set of recovery functions, this will start to get pretty hectic. The above is a simple example, in the previous app I worked on we had multiple errors which could be recovered from resulting in requiring four nested do/catch blocks and some recovery functions to be duplicated among them. -With `Flow`, upstream failures are caught and resolutions are attempted to pass the value on the next step, in a similar way to reactive programming. This allows code to be easier read and reasoned about, as well as allowing even more complicated proceedures to be written in a simple fashion, such as retrying a step multiple times to find success. +With `Flow`, upstream failures are caught and resolutions are attempted to pass the value on the next step, in a similar way to reactive programming. This allows code to be easier read and reasoned about, as well as allowing even more complicated procedures to be written in a simple fashion, such as retrying a step multiple times to find success. ```swift extension Flow where Output == ValueB {