]> matita.cs.unibo.it Git - helm.git/blob - helm/ocaml/mathql_interpreter/context.ml
Initial revision
[helm.git] / helm / ocaml / mathql_interpreter / context.ml
1 (* contexts *****************************************************************)
2
3 type svar_context = (MathQL.svar * MathQL.resource_set) list
4
5 type rvar_context = (MathQL.rvar * MathQL.resource) list
6
7 type group_context = (MathQL.rvar * MathQL.attribute_group) list
8
9 type vvar_context = (MathQL.vvar * MathQL.value) list
10
11
12 type context = {svars: svar_context;   (* contesto delle svar *)
13                 rvars: rvar_context;   (* contesto delle rvar *)
14                 groups: group_context; (* contesto dei gruppi *)
15                 vvars: vvar_context    (* contesto delle vvar introdotte con let-in *)
16                }
17
18 let upd_svars c s = 
19    {svars = s; rvars = c.rvars; groups = c.groups; vvars = c.vvars}
20
21 let upd_rvars c s = 
22    {svars = c.svars; rvars = s; groups = c.groups; vvars = c.vvars}
23
24 let upd_groups c s = 
25    {svars = c.svars; rvars = c.rvars; groups = s; vvars = c.vvars}
26
27 let upd_vvars c s = 
28    {svars = c.svars; rvars = c.rvars; groups = c.groups; vvars = s}
29
30