sig
  type param =
      value_message * Cil_types.kinstr * callstack * (state * Trace.t)
  type result = unit
  val extend : (param -> result) -> unit
  val extend_once : (param -> result) -> unit
  val is_empty : unit -> bool
  val clear : unit -> unit
  val length : unit -> int
  val apply :
    Value_messages.value_message * Cil_types.kinstr *
    Value_messages.callstack * (Value_messages.state * Trace.t) -> result
end