You are currently looking at the v9.0.0 docs (Reason v3.6 syntax edition). You can find the latest API docs here.
Nullable
Provide utilities around Js.null_undefined
.
t
REStype t<'a> = Js.null_undefined<'a>
Local alias for Js.null_undefined('a)
.
return
RESlet return: 'a => t<'a>
Constructs a value of Js.null_undefined('a)
containing a value of 'a
.
test
RESlet test: t<'a> => bool
isNullable
RESlet isNullable: t<'a> => bool
Returns true
if the given value is null or undefined, false
otherwise.
null
RESlet null: t<'a>
The null value of type Js.null_undefined('a)
.
undefined
RESlet undefined: t<'a>
The undefined value of type Js.null_undefined('a)
.
bind
RESlet 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
RESlet 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
RESlet fromOption: option<'a> => t<'a>
Maps option('a)
to Js.null_undefined('a)
.
Some(a)
=> a
None
=> undefined
from_opt
RESlet from_opt: option<'a> => t<'a>
toOption
RESlet toOption: t<'a> => option<'a>
Maps Js.null_undefined('a)
to option('a)
.
a
=> Some(a)
undefined
=> None
null
=> None
to_opt
RESlet to_opt: t<'a> => option<'a>