sig
  module Analysis : Analysis.S
  type ('env, 'expr, 'v) evaluation_functions = {
    eval_and_warn : 'env -> 'expr -> 'v * bool * bool;
    env : Analysis.Dom.t -> Value_types.callstack -> 'env;
    equal : '-> '-> bool;
    bottom : 'v;
    join : '-> '-> 'v;
    expr_to_gui_selection : 'expr -> Gui_types.gui_selection;
    res_to_gui_res : 'expr -> '-> Analysis.Val.t Gui_types.gui_res;
  }
  val lval_as_offsm_ev :
    (Analysis.Dom.t, Cil_types.lval, Gui_types.gui_offsetmap_res)
    Gui_eval.S.evaluation_functions
  val lval_zone_ev :
    (Analysis.Dom.t, Cil_types.lval, Locations.Zone.t)
    Gui_eval.S.evaluation_functions
  val null_ev :
    (Analysis.Dom.t, unit, Gui_types.gui_offsetmap_res)
    Gui_eval.S.evaluation_functions
  val exp_ev :
    (Analysis.Dom.t, Cil_types.exp, Analysis.Val.t Bottom.or_bottom)
    Gui_eval.S.evaluation_functions
  val lval_ev :
    (Analysis.Dom.t, Cil_types.lval, Analysis.Val.t Eval.flagged_value)
    Gui_eval.S.evaluation_functions
  val tlval_ev :
    Gui_types.gui_loc ->
    (Eval_terms.eval_env, Cil_types.term, Gui_types.gui_offsetmap_res)
    Gui_eval.S.evaluation_functions
  val tlval_zone_ev :
    Gui_types.gui_loc ->
    (Eval_terms.eval_env, Cil_types.term, Locations.Zone.t)
    Gui_eval.S.evaluation_functions
  val term_ev :
    Gui_types.gui_loc ->
    (Eval_terms.eval_env, Cil_types.term, Analysis.Val.t Bottom.or_bottom)
    Gui_eval.S.evaluation_functions
  val predicate_ev :
    Gui_types.gui_loc ->
    (Eval_terms.eval_env, Cil_types.predicate,
     Eval_terms.predicate_status Bottom.or_bottom)
    Gui_eval.S.evaluation_functions
  val predicate_with_red :
    Gui_types.gui_loc ->
    (Eval_terms.eval_env * (Cil_types.kinstr * Value_types.callstack),
     Red_statuses.alarm_or_property * Cil_types.predicate,
     Eval_terms.predicate_status Bottom.or_bottom)
    Gui_eval.S.evaluation_functions
  val make_data_all_callstacks :
    ('a, 'b, 'c) Gui_eval.S.evaluation_functions ->
    Gui_types.gui_loc ->
    '->
    (Gui_types.gui_callstack * Analysis.Val.t Gui_eval.gui_selection_data)
    list * exn list
end