Source file meta_ast_generic_common.ml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
open Ast_generic
let vof_arithmetic_operator =
function
| Plus -> Ocaml.VSum (("Plus", []))
| Minus -> Ocaml.VSum (("Minus", []))
| Mult -> Ocaml.VSum (("Mult", []))
| Div -> Ocaml.VSum (("Div", []))
| Mod -> Ocaml.VSum (("Mod", []))
| Pow -> Ocaml.VSum (("Pow", []))
| FloorDiv -> Ocaml.VSum (("FloorDiv", []))
| LSL -> Ocaml.VSum (("LSL", []))
| LSR -> Ocaml.VSum (("LSR", []))
| ASR -> Ocaml.VSum (("ASR", []))
| BitOr -> Ocaml.VSum (("BitOr", []))
| BitXor -> Ocaml.VSum (("BitXor", []))
| BitAnd -> Ocaml.VSum (("BitAnd", []))
| BitNot -> Ocaml.VSum (("BitNot", []))
| And -> Ocaml.VSum (("And", []))
| Or -> Ocaml.VSum (("Or", []))
| Xor -> Ocaml.VSum (("Xor", []))
| Not -> Ocaml.VSum (("Not", []))
| Eq -> Ocaml.VSum (("Eq", []))
| NotEq -> Ocaml.VSum (("NotEq", []))
| PhysEq -> Ocaml.VSum (("PhysEq", []))
| NotPhysEq -> Ocaml.VSum (("NotPhysEq", []))
| Lt -> Ocaml.VSum (("Lt", []))
| LtE -> Ocaml.VSum (("LtE", []))
| Gt -> Ocaml.VSum (("Gt", []))
| GtE -> Ocaml.VSum (("GtE", []))
let vof_incr_decr =
function
| Incr -> Ocaml.VSum (("Incr", []))
| Decr -> Ocaml.VSum (("Decr", []))
let vof_prepost =
function
| Prefix -> Ocaml.VSum (("Prefix", []))
| Postfix -> Ocaml.VSum (("Postfix", []))
let vof_inc_dec (v1, v2) =
let v1 = vof_incr_decr v1
and v2 = vof_prepost v2
in Ocaml.VTuple [ v1; v2 ]