Skip to content

Commit 11b51b5

Browse files
committed
Export individual modules in Eval
1 parent a90f04a commit 11b51b5

File tree

1 file changed

+66
-0
lines changed

1 file changed

+66
-0
lines changed

src/smtml/eval.mli

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,72 @@ exception Value of Ty.t
5656

5757
(** {1 Evaluation Functions} *)
5858

59+
module Int : sig
60+
val unop : Ty.Unop.t -> Value.t -> Value.t
61+
62+
val binop : Ty.Binop.t -> Value.t -> Value.t -> Value.t
63+
64+
val relop : Ty.Relop.t -> Value.t -> Value.t -> bool
65+
66+
val cvtop : Ty.Cvtop.t -> Value.t -> Value.t
67+
end
68+
69+
module Real : sig
70+
val unop : Ty.Unop.t -> Value.t -> Value.t
71+
72+
val binop : Ty.Binop.t -> Value.t -> Value.t -> Value.t
73+
74+
val relop : Ty.Relop.t -> Value.t -> Value.t -> bool
75+
76+
val cvtop : Ty.Cvtop.t -> Value.t -> Value.t
77+
end
78+
79+
module Bool : sig
80+
val unop : Ty.Unop.t -> Value.t -> Value.t
81+
82+
val binop : Ty.Binop.t -> Value.t -> Value.t -> Value.t
83+
84+
val triop : Ty.Triop.t -> Value.t -> Value.t -> Value.t -> Value.t
85+
86+
val relop : Ty.Relop.t -> Value.t -> Value.t -> bool
87+
88+
val naryop : Ty.Naryop.t -> Value.t list -> Value.t
89+
end
90+
91+
module Str : sig
92+
val unop : Ty.Unop.t -> Value.t -> Value.t
93+
94+
val binop : Ty.Binop.t -> Value.t -> Value.t -> Value.t
95+
96+
val triop : Ty.Triop.t -> Value.t -> Value.t -> Value.t -> Value.t
97+
98+
val relop : Ty.Relop.t -> Value.t -> Value.t -> bool
99+
100+
val cvtop : Ty.Cvtop.t -> Value.t -> Value.t
101+
102+
val naryop : Ty.Naryop.t -> Value.t list -> Value.t
103+
end
104+
105+
module Lst : sig
106+
val unop : Ty.Unop.t -> Value.t -> Value.t
107+
108+
val binop : Ty.Binop.t -> Value.t -> Value.t -> Value.t
109+
110+
val triop : Ty.Triop.t -> Value.t -> Value.t -> Value.t -> Value.t
111+
112+
val naryop : Ty.Naryop.t -> Value.t list -> Value.t
113+
end
114+
115+
module Bitv : sig
116+
val unop : Ty.Unop.t -> Value.t -> Value.t
117+
118+
val binop : Ty.Binop.t -> Value.t -> Value.t -> Value.t
119+
120+
val relop : Ty.Relop.t -> Value.t -> Value.t -> bool
121+
122+
val cvtop : Ty.Cvtop.t -> Value.t -> Value.t
123+
end
124+
59125
(** [unop ty op v] applies a unary operation [op] on the value [v] of type [ty].
60126
Raises [Type_error] if the value does not match the expected type. *)
61127
val unop : Ty.t -> Ty.Unop.t -> Value.t -> Value.t

0 commit comments

Comments
 (0)