API / Js / Null_undefined

Null_undefined

Contains functionality for dealing with values that can be both null and undefined

t

RESCRIPT
type t<'a> = Js.nullable<'a> = Value('a) | Null | Undefined

Local alias for Js.null_undefined<'a>.

return

RESCRIPT
let return: 'a => t<'a>

Constructs a value of Js.null_undefined<'a> containing a value of 'a.

isNullable

RESCRIPT
let isNullable: t<'a> => bool

Returns true if the given value is null or undefined, false otherwise.

null

RESCRIPT
let null: t<'a>

The null value of type Js.null_undefined<'a>.

undefined

RESCRIPT
let undefined: t<'a>

The undefined value of type Js.null_undefined<'a>.

bind

RESCRIPT
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>.

Examples

RESCRIPT
let maybeGreetWorld = (maybeGreeting: Js.null_undefined<string>) => Js.Null_undefined.bind(maybeGreeting, (. greeting) => greeting ++ " world!")

iter

RESCRIPT
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.

Examples

RESCRIPT
let maybeSay = (maybeMessage: Js.null_undefined<string>) => Js.Null_undefined.iter(maybeMessage, (. message) => Js.log(message))

fromOption

RESCRIPT
let fromOption: option<'a> => t<'a>

Maps option<'a> to Js.null_undefined<'a>. Some(a) => a None => undefined

from_opt

Deprecated

Use fromOption instead

RESCRIPT
let from_opt: option<'a> => t<'a>

toOption

RESCRIPT
let toOption: t<'a> => option<'a>

Maps Js.null_undefined<'a> to option<'a>. a => Some(a) undefined => None null => None

to_opt

Deprecated

Use toOption instead

RESCRIPT
let to_opt: t<'a> => option<'a>