when<ResultType> method
Somehow like a switch case statement. You can return a Value from the functions success and failure.
Implementation
ResultType when<ResultType>(
{@required ResultType Function(Success) success,
@required ResultType Function(Failure) failure}) {
if (_isSuccess) {
return success(_value);
}
return failure(_failure);
}