package pfff

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
module Ast = Ast_php
module ISet : sig ... end
module IMap : sig ... end
module SSet : sig ... end
module SMap : sig ... end
type code_database = {
  1. funs : string -> Ast.func_def;
  2. classes : string -> Ast.class_def;
  3. constants : string -> Ast.constant_def;
}
type value =
  1. | Vbool of bool
  2. | Vint of int
  3. | Vfloat of float
  4. | Vstring of string
  5. | Vabstr of type_
  6. | Vnull
  7. | Vrecord of value SMap.t
  8. | Varray of value list
  9. | Vmap of value * value
  10. | Vmethod of value * (env -> heap -> Ast.expr list -> heap * value) IMap.t
  11. | Vobject of value SMap.t
  12. | Vsum of value list
  13. | Vptr of int
  14. | Vref of ISet.t
  15. | Vtaint of string
  16. | Vany
and type_ =
  1. | Tbool
  2. | Tint
  3. | Tfloat
  4. | Tstring
  5. | Txhp
and heap = {
  1. ptrs : value IMap.t;
}
and env = {
  1. db : code_database;
  2. vars : value SMap.t ref;
  3. globals : value SMap.t ref;
  4. file : string ref;
  5. cfun : string;
  6. path : Callgraph_php2.node list ref;
  7. stack : int SMap.t;
  8. safe : value SMap.t ref;
}
module type TAINT = sig ... end
val empty_heap : heap
val empty_env : code_database -> string -> env
val list : (string -> 'a) -> ((string -> 'a) -> 'b -> unit) -> 'b list -> unit
val value : value IMap.t -> (SMap.key -> unit) -> value -> unit
val type_ : (SMap.key -> unit) -> type_ -> unit
val print_locals_and_globals : (SMap.key -> unit) -> env -> heap -> unit
val string_of_value : heap -> value -> string