Module Gobba.Eval

module T = ANSITerminal
val bool_binop : (Types.evt * Types.evt) -> (bool -> bool -> bool) -> Types.evt
val bool_unop : Types.evt -> (bool -> bool) -> Types.evt
val uniqueorfail : 'a list -> 'a list
val eval : Types.expr -> Types.evalstate -> Types.evt

Evaluate an expression in an environment

val eval_binop : Types.binop -> Types.expr -> Types.expr -> Types.evalstate -> Types.evt
val lookup : Types.ide -> Types.evalstate -> Types.evt
val applyfun : Types.evt -> Types.evt -> Types.evalstate -> Types.evt
val eval_assignment : Types.evalstate -> Types.assignment_type -> Types.ide * Types.evt
val eval_assignment_list : Types.assignment_type list -> Types.evalstate -> Types.evalstate
val eval_command : Types.command -> Types.evalstate -> string -> Types.evt * Types.evalstate
val eval_command_list : Types.command list -> Types.evalstate -> string -> Types.evt * Types.evalstate
val eval_directive : Types.directive -> Types.evalstate -> string -> Types.evt * Types.evalstate