API / Js / Undefined

Undefined

Provide utilities around Js.undefined.

t

RES
type t<'a> = Js.undefined<'a>

Local alias for 'a Js.undefined.

return

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

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

test

let test: t<'a> => bool

Returns true if the given value is empty (undefined), false otherwise.

testAny

let testAny: 'a => bool

Since 1.6.1 Returns true if the given value is empty (undefined).

empty

let empty: t<'a>

The empty value, undefined.

getUnsafe

let getUnsafe: t<'a> => 'a

getExn

let getExn: t<'a> => 'a

bind

let bind: (t<'a>, (. 'a) => 'b) => t<'b>

Maps the contained value using the given function. If Js.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.undefined<'b>.

RES
let maybeGreetWorld = (maybeGreeting: Js.undefined<string>) => Js.Undefined.bind(maybeGreeting, (. greeting) => greeting ++ " world!")

iter

let iter: (t<'a>, (. 'a) => unit) => unit

Iterates over the contained value with the given function. If Js.undefined<'a> contains a value, that value is unwrapped and applied to the given function.

RES
let maybeSay = (maybeMessage: Js.undefined<string>) => Js.Undefined.iter(maybeMessage, (. message) => Js.log(message))

fromOption

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

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

from_opt

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

toOption

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

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

to_opt

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