SML# Document Version 4.0.0
26 Standard ML Basis Library

26.22 OPTION

Provide an operation type and primitive functions.

signature OPTION =
sig
  datatype ’a option = NONE | SOME of ’a
  exception Option
  val app : (’a -> unit) -> ’a option -> unit
  val compose : (’a -> ’b) * (’c -> ’a option) -> ’c -> ’b option
  val composePartial : (’a -> ’b option) * (’c -> ’a option) -> ’c -> ’b option
  val filter : (’a -> bool) -> ’a -> ’a option
  val getOpt : ’a option * ’a -> ’a
  val isSome : ’a option -> bool
  val join : ’a option option -> ’a option
  val map : (’a -> ’b) -> ’a option -> ’b option
  val mapPartial : (’a -> ’b option) -> ’a option -> ’b option
  val valOf : ’a option -> ’a
end
  • Option : OPTION