PHP Monad API Reference

Some
in package
implements Option

Read onlyYes
FinalYes
Tags
template
implements

Table of Contents

Interfaces

Option
Option monad as a `Maybe monad`.

Methods

and()  : Option<string|int, U>
andThen()  : Option<string|int, U>
NOTE: PHPdoc's completion by type specification in Closure doesn't work, so I'm redefining it.
expect()  : T
filter()  : Option<string|int, T>
getIterator()  : Traversable
inspect()  : $this
isNone()  : false
isSome()  : true
isSomeAnd()  : bool
map()  : Option<string|int, U>
mapOr()  : U|V
mapOrElse()  : U|V
okOr()  : Ok<string|int, T>
okOrElse()  : Ok<string|int, T>
or()  : $this
orElse()  : $this
orThrow()  : $this
Returns the contained Ok value or throws the provided exception.
unwrap()  : T
unwrapOr()  : T
unwrapOrElse()  : T
unwrapOrThrow()  : T
Returns the contained Some value or throws the provided exception.
xor()  : Option<string|int, T|U>

Methods

andThen()

NOTE: PHPdoc's completion by type specification in Closure doesn't work, so I'm redefining it.

public andThen(Closure $right) : Option<string|int, U>
Parameters
$right : Closure
Tags
phpstan-ignore

method.childParameterType

Attributes
#[Override]
Return values
Option<string|int, U>

expect()

public expect(string $message) : T
Parameters
$message : string
Tags
throws
void
Attributes
#[Override]
Return values
T

filter()

public filter(Closure $predicate) : Option<string|int, T>
Parameters
$predicate : Closure
Attributes
#[Override]
Return values
Option<string|int, T>

getIterator()

public getIterator() : Traversable
Attributes
#[Override]
Return values
Traversable

inspect()

public inspect(Closure $callback) : $this
Parameters
$callback : Closure
Attributes
#[Override]
Return values
$this

isNone()

public isNone() : false
Attributes
#[Override]
Return values
false

isSome()

public isSome() : true
Attributes
#[Override]
Return values
true

isSomeAnd()

public isSomeAnd(Closure $predicate) : bool
Parameters
$predicate : Closure
Attributes
#[Override]
Return values
bool

map()

public map(Closure $callback) : Option<string|int, U>
Parameters
$callback : Closure
Attributes
#[Override]
Return values
Option<string|int, U>

mapOr()

public mapOr(Closure $callback, mixed $default) : U|V
Parameters
$callback : Closure
$default : mixed
Attributes
#[Override]
Return values
U|V

mapOrElse()

public mapOrElse(Closure $callback, Closure $default) : U|V
Parameters
$callback : Closure
$default : Closure
Attributes
#[Override]
Return values
U|V

okOr()

public okOr(E $err) : Ok<string|int, T>
Parameters
$err : E
Tags
template
Attributes
#[Override]
Return values
Ok<string|int, T>

okOrElse()

public okOrElse(callable(): E $err) : Ok<string|int, T>
Parameters
$err : callable(): E
Tags
template
Attributes
#[Override]
Return values
Ok<string|int, T>

or()

public or(Option $right) : $this
Parameters
$right : Option
Attributes
#[Override]
Return values
$this

orElse()

public orElse(Closure $right) : $this
Parameters
$right : Closure
Attributes
#[Override]
Return values
$this

orThrow()

Returns the contained Ok value or throws the provided exception.

public orThrow(Throwable $exception) : $this
Parameters
$exception : Throwable

The exception to throw if the result is Err

Tags
template
throws
never
Attributes
#[Override]
Return values
$this

unwrap()

public unwrap() : T
Tags
throws
void
Attributes
#[NoDiscard]
#[Override]
Return values
T

unwrapOr()

public unwrapOr(mixed $default) : T
Parameters
$default : mixed
Attributes
#[NoDiscard]
#[Override]
Return values
T

unwrapOrElse()

public unwrapOrElse(Closure $default) : T
Parameters
$default : Closure
Attributes
#[NoDiscard]
#[Override]
Return values
T

unwrapOrThrow()

Returns the contained Some value or throws the provided exception.

public unwrapOrThrow(E $exception) : T
Parameters
$exception : E
Tags
template
throws
never
Attributes
#[NoDiscard]
#[Override]
Return values
T

xor()

public xor(Option $right) : Option<string|int, T|U>
Parameters
$right : Option
Attributes
#[Override]
Return values
Option<string|int, T|U>

        
On this page

Search results