Module Jslogic.JSLogicCommon

module L = Logging

Tables

val small_tbl_size : int
val medium_tbl_size : int
type var_to_fid_tbl_type = (string, string) Stdlib.Hashtbl.t
type cc_tbl_type = (string, var_to_fid_tbl_type) Stdlib.Hashtbl.t
type fun_tbl_type = (string, string * string list * JS_Parser.Syntax.exp option * bool * Jsil_syntax.Spec.t option) Stdlib.Hashtbl.t
type pre_fun_tbl_type = (string, string * string list * JS_Parser.Syntax.exp option * bool * (JS_Parser.Syntax.annotation list * string list * (string, string) Stdlib.Hashtbl.t)) Stdlib.Hashtbl.t
type vis_tbl_type = (string, string list) Stdlib.Hashtbl.t
val get_vis_list : vis_tbl_type -> string -> string list
val get_scope_table : cc_tbl_type -> string -> var_to_fid_tbl_type
val main_fid : string
val pi_pred_name : string
val object_class : string
val syntax_error_pred_name : string
val type_error_pred_name : string
val initial_heap_pre_pred_name : string
val initial_heap_post_pred_name : string
val function_object_pred_name : string
val standard_object_pred_name : string
val this_logic_var_name : string
val locGlobName : string
val var_te : string
val var_se : string
val var_er : string
val var_this : string
val var_scope : string
val logic_var_scope : string
val var_scope_final : string
val funobj_pred_name : string
val js_obj_internal_fields : string list

Fresh Names

val fid_to_lvar : string -> string
val fid_to_lvar_fresh : string -> string
val vislist_2_les : string list -> int -> Expr.t list

Lists

val find_in_list : string list -> string -> int
val list_overlap : string list -> string list -> int

Scope Clarification

val psi : cc_tbl_type -> vis_tbl_type -> string -> string -> int option
val o_psi : vis_tbl_type -> string -> string -> int