ghostwriter / result
Provides a Result type implementation for PHP
Fund package maintenance!
ghostwriter
Installs: 1 624 643
Dependents: 3
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
Requires
- php: >=8.4
- ghostwriter/option: ^2.0.0
Requires (Dev)
- ghostwriter/coding-standard: dev-main
This package is auto-updated.
Last update: 2025-02-11 17:50:58 UTC
README
Provides a Result
type implementation for PHP using ghostwriter/option
Installation
You can install the package via composer:
composer require ghostwriter/result
Usage
use Ghostwriter\Result\Failure; use Ghostwriter\Result\Success; // --- Success --- $success = Success::new('Hello world!'); $success->get(); // 'Hello world!' // --- Failure --- $failure = Failure::new(new ExampleException()); $failure->get(); // throws: ResultException $failure->getOr('Fallback'); // 'Fallback' $failure->getError(); // returns: instance of ExampleException // --- Example --- function divide(int $x, int $y): ResultInterface { if ($y === 0) { return Result::failure(new DivisionByZeroError); } return Result::success($x / $y); } divide(1, 0); // Error(DivisionByZeroError) divide(1, 1); // Success(1)
Credits
Changelog
Please see CHANGELOG.md for more information on what has changed recently.
License
Please see LICENSE for more information on the license that applies to this project.
Security
Please see SECURITY.md for more information on security disclosure process.