dgame / php-optional
php optional
v0.8.0
2017-11-22 12:40 UTC
Requires
- php: ^7.0
Requires (Dev)
- phpunit/phpunit: ^6.4
README
Rust-like Optional-type for PHP 7
Some - 一个有效的值
$some = some(42); $this->assertTrue($some->isSome()); $this->assertEquals(42, $some->unwrap());
Some 与参数解包
$some = some(42); $this->assertTrue($some->isSome($value)); $this->assertFalse($some->isNone()); $this->assertEquals(42, $value);
None - 一个无效的值
$none = none(); $this->assertTrue($none->isNone()); $this->assertFalse($none->isSome());
None 与参数解包
$none = none(); $this->assertTrue($none->isNone()); $this->assertFalse($none->isSome($value)); $this->assertNull($value);
Maybe - 根据您的值是否为 Some
或 None
来决定
$maybe = maybe(null); $this->assertTrue($maybe->isNone()); $maybe = maybe(42); $this->assertTrue($maybe->isSome()); $this->assertEquals(42, $maybe->unwrap());
确保条件得到满足
$result = some(0)->ensure(function($value) { return $value > 0; }); $this->assertTrue($result->isNone());