type _ t = | Enum : 'a * ('a -> string) -> 'a t| Chan : 'a chan -> 'a chan t| Bool : bool -> bool t| Byte : int -> int t| Short : int -> int t| Int : int -> int t| String : string -> string t| Void : unit t
and 'a chan = {capacity : int e;mutable content : 'a list;content_type : 'a t;
}val enum : (int -> 'a option) -> ('a -> string) -> string -> unit * stringval enum_type : string -> string optionval is_enum : string -> boolval is_declared : 'a. 'a t -> boolval unbox : 'a. 'a t -> string * ('a -> string) * 'atype _ var = | Var : {name : string;init : 'a t;value : 'a BatteriesExceptionless.ref;show : 'a -> string;
} -> ('a e * 'a e * ('a e -> unit e) * unit e) var| Arr : {name : string;init : 'a t;value : 'a array;show : 'a -> string;show_all : 'a array -> string;length : int;
} -> ('a e * (int e -> 'a e) * ((int e * 'a e) -> unit e) * (int e -> unit e))
var
val var :
'a t ->
string ->
('a e * 'a e * ('a e -> unit e) * unit e) var * stringval arr :
(int * string) ->
'a t ->
string ->
('a e * (int e -> 'a e) * ((int e * 'a e) -> unit e) * (int e -> unit e)) var
* stringval var_name : 'x. 'x var -> stringval get : 'c 'g 's 'm. ('c * 'g * 's * 'm) var -> 'gval set : 'c 'g 's 'm. ('c * 'g * 's * 'm) var -> 'sval (!) : ('a * 'b * 'c * 'd) var -> 'bval (:=) : ('a * 'b * 'c * 'd) var -> 'cval (@=) : ('a * 'b * 'c * 'd) var -> 'cval _assert : (bool * string) -> unit * stringval println : ('a * string) -> unit * stringval _true : bool * stringval _false : bool * stringval wait : (bool * string) -> unit * stringval break : unit * stringmodule Chan : sig ... endval (>>) : ('a * string) -> ('b * string) -> 'b * stringval bind : ('a * string) -> ('a -> 'b * string) -> 'b * stringval (>>=) : ('a * string) -> ('a -> 'b * string) -> 'b * stringval indent : string -> stringval surround : string -> string -> ('a * string) -> 'a * stringval _match : (('a * string) * ('b * string)) list -> unit * stringval _do : (('a * string) * ('b * string)) list -> unit * stringval _if : (('a * string) * ('b * string)) list -> unit * stringval _ifte : (bool * string) -> ('a * string) -> ('a * string) -> unit * stringval _ift : (bool * string) -> (unit * string) -> unit * stringval _for :
('a e * 'a e * ('a e -> unit e) * unit e) var ->
('b e * (int e -> 'b e) * ((int e * 'b e) -> unit e) * (int e -> unit e)) var ->
('c * string) ->
'c * stringval _foreach :
('a e * (int e -> 'a e) * ((int e * 'a e) -> unit e) * (int e -> unit e)) var ->
(int e -> 'a e -> 'b * string) ->
'b * stringtype ('a, 'b, 'c, 'd, 'e, 'z) args = | A0 of 'z e| A1 of 'a * 'a -> 'z e| A2 of 'a * 'b * 'a -> 'b -> 'z e| A3 of 'a * 'b * 'c * 'a -> 'b -> 'c -> 'z e| A4 of 'a * 'b * 'c * 'd * 'a -> 'b -> 'c -> 'd -> 'z e| A5 of 'a * 'b * 'c * 'd * 'e * 'a -> 'b -> 'c -> 'd -> 'e -> 'z e
module Macro : sig ... endtype eval = | EvalEnum of int -> string option| EvalInt| EvalString| EvalSkip| AssignIdOfString of string * int
val special_fun : string -> eval list optionval special_funs : unit -> string listval op :
('a -> 'b -> 'c) ->
string ->
('a * string) ->
('b * string) ->
'c * stringval (==) : ('a * string) -> ('a * string) -> bool * stringval (!=) : ('a * string) -> ('a * string) -> bool * stringval (<) : ('a * string) -> ('a * string) -> bool * stringval (>) : ('a * string) -> ('a * string) -> bool * stringval (<=) : ('a * string) -> ('a * string) -> bool * stringval (>=) : ('a * string) -> ('a * string) -> bool * stringval (+) : (int * string) -> (int * string) -> int * stringval (-) : (int * string) -> (int * string) -> int * stringval (/) : (int * string) -> (int * string) -> int * stringval (*) : (int * string) -> (int * string) -> int * stringval (&&) : (bool * string) -> (bool * string) -> bool * stringval (||) : (bool * string) -> (bool * string) -> bool * stringval i : int -> int * stringval (^) : (string * string) -> (string * string) -> string * stringval fail : (string * string) -> unit * stringval i2s : (int * 'a) -> string * 'aval e : 'a -> ('a -> 'b) -> 'a * 'bval e2s : ('a * 'b) -> 'b * 'bval incr : 'g 's 'm. (int e * 'g * 's * 'm) var -> 'mval decr : 'g 's 'm. (int e * 'g * 's * 'm) var -> 'm