Nullable
Provide utilities around Js.null_undefined
.
t
REStype t<'a> = Js.null_undefined<'a>
Local alias for Js.null_undefined<'a>
.
return
let return: 'a => t<'a>
Constructs a value of Js.null_undefined<'a>
containing a value of 'a
.
test
let test: t<'a> => bool
isNullable
let isNullable: t<'a> => bool
Returns true
if the given value is null or undefined, false
otherwise.
null
let null: t<'a>
The null value of type Js.null_undefined<'a>
.
undefined
let undefined: t<'a>
The undefined value of type Js.null_undefined<'a>
.
bind
let bind: (t<'a>, (. 'a) => 'b) => t<'b>
Maps the contained value using the given function.
If Js.null_undefined<'a>
contains a value, that value is unwrapped, mapped to a 'b
using the given function a' => 'b
, then wrapped back up and returned as Js.null_undefined<'b>
.
RESlet maybeGreetWorld = (maybeGreeting: Js.null_undefined<string>) =>
Js.Nullable.bind(maybeGreeting, (. greeting) => greeting ++ " world!")
iter
let iter: (t<'a>, (. 'a) => unit) => unit
Iterates over the contained value with the given function.
If Js.null_undefined<'a>
contains a value, that value is unwrapped and applied to the given function.
RESlet maybeSay = (maybeMessage: Js.null_undefined<string>) =>
Js.Nullable.iter(maybeMessage, (. message) => Js.log(message))
fromOption
let fromOption: option<'a> => t<'a>
Maps option<'a>
to Js.null_undefined<'a>
.
Some(a)
=> a
None
=> undefined
from_opt
let from_opt: option<'a> => t<'a>
toOption
let toOption: t<'a> => option<'a>
Maps Js.null_undefined<'a>
to option<'a>
.
a
=> Some(a)
undefined
=> None
null
=> None
to_opt
let to_opt: t<'a> => option<'a>