Module for Type Environments.
val store_debug_file_for_source : InferBase.SourceFile.t ‑> t ‑> unit
val lookup : t ‑> InferIR.Typ.Name.t ‑> InferIR.Typ.Struct.t option
Look up a name in the global type environment.
val mk_struct : t ‑> ?default:InferIR.Typ.Struct.t ‑> ?fields:InferIR.Typ.Struct.fields ‑> ?statics:InferIR.Typ.Struct.fields ‑> ?methods:InferIR.Typ.Procname.t list ‑> ?supers:InferIR.Typ.Name.t list ‑> ?annots:InferIR.Annot.Item.t ‑> InferIR.Typ.Name.t ‑> InferIR.Typ.Struct.t
Construct a struct_typ, normalizing field types
val add_field : t ‑> InferIR.Typ.Name.t ‑> InferIR.Typ.Struct.field ‑> unit
Add a field to a given struct in the global type environment.
val language_is : t ‑> InferBase.Language.t ‑> bool
Test the language from which the types in the tenv were translated
Best-effort merge of src
into dst
. If a procedure is both in dst
and src
, the one in
src
will get overwritten.
module SQLite : InferBase.SqliteUtils.Data with type t = per_file