Coccinelle release 1.0.0-rc13
[bpt/coccinelle.git] / bundles / menhirLib / menhir-20120123 / src / mark.mli
1 (**************************************************************************)
2 (* *)
3 (* Menhir *)
4 (* *)
5 (* François Pottier, INRIA Rocquencourt *)
6 (* Yann Régis-Gianas, PPS, Université Paris Diderot *)
7 (* *)
8 (* Copyright 2005-2008 Institut National de Recherche en Informatique *)
9 (* et en Automatique. All rights reserved. This file is distributed *)
10 (* under the terms of the Q Public License version 1.0, with the change *)
11 (* described in file LICENSE. *)
12 (* *)
13 (**************************************************************************)
14
15 (** This module implements a very simple notion of ``mark''. *)
16
17 (** The type of marks. *)
18 type t
19
20 (** [fresh()] generates a fresh mark, that is, a mark that is guaranteed
21 to be distinct from all existing marks. *)
22 val fresh: unit -> t
23
24 (** [same mark1 mark2] tells whether [mark1] and [mark2] are the same
25 mark, that is, were created by the same call to [fresh]. *)
26 val same: t -> t -> bool
27
28 (** [none] is a distinguished mark, created via an initial call to
29 [fresh()]. *)
30 val none: t
31