towhee.functional.option.Option¶
- class towhee.functional.option.Option[source]¶
Bases:
Generic
[A
]Functional-style error handling.
Option[A] = Some(A) or Empty[A] 1. Some(A): just a container for result; 2. Empty[A]: result is empty, because of input error or computation error;
Examples:
>>> a = Some(10) >>> a.map(lambda x: x/2.0) Some(5.0)
>>> a.map(lambda x: x/0) Empty()
>>> b = Empty() >>> b.map(lambda x: x/2.0) Empty()
Methods
Return an empty value
Apply boxed version of callable
Return unboxed value, or default is the value is empty.
Return True if the value is empty.
Return True if the value is boxed value.
Apply function to value
Return a boxed value
- flat_map(f: Callable[[A], Option[B]]) Option[B] [source]¶
Apply boxed version of callable
- Parameters:
f (Callable[[A], Option[B]]) – boxed version of callable
- Returns:
boxed value
- Return type:
Option[B]
Examples:
>>> Option.of(1).flat_map(lambda x: x+1) 2
>>> Option.empty().flat_map(lambda x: x+1) Empty()
- get_or_else(default)[source]¶
Return unboxed value, or default is the value is empty.
Examples:
>>> Option.of(0).get_or_else(1) 0
>>> Option.empty().get_or_else(1) 1