package mopsa

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

Bot - Lift operations to a bottom element.

Types

type 'a with_bot =
  1. | BOT
  2. | Nb of 'a
    (*

    Adds a bottom element to a type.

    *)

Operator lifting

val bot_lift1 : ('a -> 'b) -> 'a with_bot -> 'b with_bot
val bot_lift2 : ('a -> 'b -> 'c) -> 'a with_bot -> 'b with_bot -> 'c with_bot
val bot_absorb1 : ('a -> 'b with_bot) -> 'a with_bot -> 'b with_bot
val bot_absorb2 : ('a -> 'b -> 'c with_bot) -> 'a with_bot -> 'b with_bot -> 'c with_bot
val bot_neutral2 : ('a -> 'a -> 'a) -> 'a with_bot -> 'a with_bot -> 'a with_bot
val bot_apply : ('a -> 'b -> 'a) -> 'a -> 'b with_bot -> 'a
val bot_apply2 : 'a -> 'a -> ('b -> 'b -> 'a) -> 'b with_bot -> 'b with_bot -> 'a
val bot_merge2 : 'a with_bot -> 'b with_bot -> ('a * 'b) with_bot
val bot_equal : ('a -> 'b -> bool) -> 'a with_bot -> 'b with_bot -> bool
val bot_included : ('a -> 'b -> bool) -> 'a with_bot -> 'b with_bot -> bool
val bot_compare : ('a -> 'a -> int) -> 'a with_bot -> 'a with_bot -> int
val bot_dfl1 : 'c -> ('a -> 'c) -> 'a with_bot -> 'c
val bot_dfl2 : 'c -> ('a -> 'b -> 'c) -> 'a with_bot -> 'b with_bot -> 'c
val list_remove_bot : 'a with_bot list -> 'a list

Exceptions

exception Found_BOT
val raise_bot : unit -> 'a
val catch_bot : 'b -> ('a -> 'b) -> 'a -> 'b
val bot_to_exn : 'a with_bot -> 'a
val exn_to_bot : ('a -> 'b) -> 'a -> 'b with_bot
val nobot : string -> 'a with_bot -> 'a

Printing

val bot_string : string
val bot_to_string : ('a -> string) -> 'a with_bot -> string
val bot_print : (Stdlib.out_channel -> 'a -> unit) -> Stdlib.out_channel -> 'a with_bot -> unit
val bot_fprint : (Stdlib.Format.formatter -> 'a -> unit) -> Stdlib.Format.formatter -> 'a with_bot -> unit
val bot_bprint : (Stdlib.Buffer.t -> 'a -> unit) -> Stdlib.Buffer.t -> 'a with_bot -> unit
OCaml

Innovation. Community. Security.