Up

module Mark

: sig

This module implements a very simple notion of ``mark''.

#
type t

The type of marks.

#
val fresh : unit -> t

fresh() generates a fresh mark, that is, a mark that is guaranteed to be distinct from all existing marks.

#
val same : t -> t -> bool

same mark1 mark2 tells whether mark1 and mark2 are the same mark, that is, were created by the same call to fresh.

#
val none : t

none is a distinguished mark, created via an initial call to fresh().

end