Module InferModules.CGeneral_utils

type var_info = InferGenerated.Clang_ast_t.decl_info * InferGenerated.Clang_ast_t.qual_type * InferGenerated.Clang_ast_t.var_decl_info * bool
val add_no_duplicates_fields : InferIR.Typ.Struct.field -> InferIR.Typ.Struct.field list -> InferIR.Typ.Struct.field list
val append_no_duplicates_fields : InferIR.Typ.Struct.field list -> InferIR.Typ.Struct.field list -> InferIR.Typ.Struct.field list
val append_no_duplicates_methods : InferIR.Typ.Procname.t list -> InferIR.Typ.Procname.t list -> InferIR.Typ.Procname.t list
val swap_elements_list : 'a list -> 'a list
val list_range : int -> int -> int list
val mk_class_field_name : InferIR.Typ.Name.t -> string -> InferIR.Typ.Fieldname.t
val get_var_name_mangled : InferGenerated.Clang_ast_t.decl_info -> InferGenerated.Clang_ast_t.named_decl_info -> InferGenerated.Clang_ast_t.var_decl_info -> string * InferIR.Mangled.t
val mk_sil_global_var : CFrontend_config.translation_unit_context -> ?⁠mk_name:(string -> InferIR.Mangled.t -> InferIR.Mangled.t) -> InferGenerated.Clang_ast_t.decl_info -> InferGenerated.Clang_ast_t.named_decl_info -> InferGenerated.Clang_ast_t.var_decl_info -> InferGenerated.Clang_ast_t.qual_type -> InferIR.Pvar.t
val mk_sil_var : CFrontend_config.translation_unit_context -> InferGenerated.Clang_ast_t.named_decl_info -> var_info option -> InferIR.Typ.Procname.t -> InferIR.Typ.Procname.t -> InferIR.Pvar.t
val is_cpp_translation : CFrontend_config.translation_unit_context -> bool

true if the current language is C++ or ObjC++

val is_objc_extension : CFrontend_config.translation_unit_context -> bool

true if the current language is ObjC or ObjC++