]> matita.cs.unibo.it Git - helm.git/blob - components/metadata/metadataTypes.mli
matita 0.5.1 tagged
[helm.git] / components / metadata / metadataTypes.mli
1 (* Copyright (C) 2004, HELM Team.
2  * 
3  * This file is part of HELM, an Hypertextual, Electronic
4  * Library of Mathematics, developed at the Computer Science
5  * Department, University of Bologna, Italy.
6  * 
7  * HELM is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU General Public License
9  * as published by the Free Software Foundation; either version 2
10  * of the License, or (at your option) any later version.
11  * 
12  * HELM is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with HELM; if not, write to the Free Software
19  * Foundation, Inc., 59 Temple Place - Suite 330, Boston,
20  * MA  02111-1307, USA.
21  * 
22  * For details, see the HELM World-Wide-Web page,
23  * http://helm.cs.unibo.it/
24  *)
25
26 val position_prefix : string
27
28 val inconcl_pos : string 
29 val mainconcl_pos : string
30 val mainhyp_pos : string
31 val inhyp_pos : string
32 val inbody_pos : string
33
34 type relation = 
35   | Eq of int
36   | Le of int
37   | Lt of int
38   | Ge of int
39   | Gt of int
40
41 type main_position =
42   [ `MainConclusion of relation option (* Pi depth *)
43   | `MainHypothesis of relation option (* Pi depth *)
44   ]
45
46 type position =
47   [ main_position
48   | `InConclusion
49   | `InHypothesis
50   | `InBody
51   ]
52
53 type pi_depth = int
54
55 type metadata =
56   [ `Sort of Cic.sort * main_position
57   | `Rel of main_position
58   | `Obj of UriManager.uri * position
59   ]
60
61 type constr =
62   [ `Sort of Cic.sort * main_position list
63   | `Rel of main_position list
64   | `Obj of UriManager.uri * position list
65   ]
66
67 val constr_of_metadata: metadata -> constr
68
69   (** invoke this function to set the current owner. Afterwards the functions
70   * below will return the name of the table of the set owner *)
71 val ownerize_tables : string -> unit
72 val are_tables_ownerized : unit -> bool
73
74 val sort_tbl: unit -> string  
75 val rel_tbl: unit -> string
76 val obj_tbl: unit -> string
77 val name_tbl: unit -> string
78 val count_tbl: unit -> string
79
80 val library_sort_tbl:  string  
81 val library_rel_tbl:  string
82 val library_obj_tbl:  string
83 val library_name_tbl:  string
84 val library_count_tbl: string
85 val library_hits_tbl: string
86