ghostwriter/option

为PHP提供选项类型实现

1.5.1 2023-07-05 19:51 UTC

README

Automation Supported PHP Version Mutation Coverage Code Coverage Type Coverage Latest Version on Packagist Downloads

为PHP提供 Option 类型实现。

安装

您可以通过composer安装此包

composer require ghostwriter/option

如果您觉得这个repo有用,请给它加星⭐️

您也可以给这个repo加星(🌟),这样以后更容易找到。

用法

use Ghostwriter\Option\Exception\NullPointerException;
use Ghostwriter\Option\None;
use Ghostwriter\Option\Some;

$greeting = Some::new('Hello World!');
echo $greeting->unwrap();        // 'Hello World!'


$name = None::new();
echo $name->unwrap();                  // throw `NullPointerException`
echo $name->unwrapOr('Default Value'); // 'Default Value'

None::new();            // return `None`
Some::nullable(null);   // return `None`
Some::new(null);        // throw `NullPointerException`

--- Example

function divide(int $x, int $y): OptionInterface
{
    if ($y === 0) {
        return None::new();
    }

    return Some::new($x / $y);
}

divide(1, 0); // None
divide(1, 1); // Some(1)

测试

composer test

鸣谢

变更日志

请参阅CHANGELOG.md以获取有关最近更改的更多信息。

许可证

有关此项目适用许可证的更多信息,请参阅LICENSE

安全

有关安全披露流程的更多信息,请参阅SECURITY.md