Module Prime_knowable
Optional Values with Type-Level Information about Presence
type (+_, _) t=|Unknown : ('a, [> `Unknown ]) t|Known : 'a -> ('a, [> `Known ]) t('a, 'k) tis a type-enriched analogue of'a option, where'kdetermines whether the value is present or not.
val get : ('a, [ `Known ]) t -> 'aknow kis the value held by the type-assured knowledge of it.
val get_opt : ('a, [< `Known | `Unknown ]) t -> 'a optionget_opt kisOption.map know (inquire k).
val of_option : 'a option -> ('a, [> `Known | `Unknown ]) tof_option NoneisUnknownandknowable_of_option (Some x)isKnown x.