val equal : t -> t -> boolval compare : t -> t -> intval pretty : unit -> t -> Pretty.docval name : unit -> stringval arbitrary : unit -> t QCheck.arbitraryval pretty_diff : unit -> (t * t) -> Pretty.docval string_of : t -> stringval string_of_key : k -> stringval string_of_record : r -> stringval make : k -> Cil.location list -> s -> tval map : (r -> r) -> t -> tval filter : (r -> bool) -> t -> tval set_key : k -> t -> tval set_state : s -> t -> tval remove_state : s -> t -> tval length : t -> int * intval must : (r -> bool) -> t -> boolval may : (r -> bool) -> t -> boolval loc : r -> Cil.location listval edit_loc : (Cil.location list -> Cil.location list) -> r -> rval in_state : s -> r -> boolval get_record : t -> r option