ing errors.
Each of these will forward the result that they don't handle
to their successors, and together they handle both value and error result.
It also has the additional benefit of the <a href="dart-async/Future/catchError.html">catchError</a> handling errors in the
<a href="dart-async/Future/then.html">then</a> value callback too.
Using sequential handlers instead of parallel ones often leads to code that
is easier to reason about.
It also makes asynchronous code very similar to synchronous code:</p>
