Resultify
A Dart package for result-oriented programming, providing a Result<R, E>
type with convenient methods for streamlined error handling.
Usage
To use this package, add resultify
as a dependency in your pubspec.yaml
:
dependencies:
resultify: <latest-version>
Now you can import the package in your Dart code:
import 'package:resultify/resultify.dart';
Result Type
The Result<R, E>
type encapsulates either a successful result (R
) or an error (E
).
Result<int, String> divide(int a, int b) {
if (b == 0) return Result.error("Cannot divide by zero");
return Result.success(a ~/ b);
}
Convinient methods
The package provides convenient methods for working with results:
getResultOrDefault
: Gets the result or a default value.getErrorOrDefault
: Gets the error or a default value.match
: Matches the result, invoking callbacks based on success or error.wrap
: Executes a function and wraps the result, handling exceptions.
For more examples and detailed usage, please refer to the example directory.
Issues and Contributions
Feel free to report issues or contribute to the project on GitHub.
Libraries
- resultify
- The
resultify
library provides a genericResult<R, E>
type for result-oriented programming in Dart. It introduces convenient methods for handling success and error outcomes, allowing developers to streamline error management and enhance code clarity. The library is designed to improve the robustness and expressiveness of Dart applications by offering a concise and flexible approach to result handling.