sig
type usage_table_t =
(Flx_ast.bid_t, (Flx_ast.bid_t * Flx_ast.range_srcref) list) Hashtbl.t
type usage_t = Flx_call.usage_table_t * Flx_call.usage_table_t
val call_data :
Flx_mtypes2.sym_state_t ->
Flx_types.fully_bound_symbol_table_t -> Flx_call.usage_t
val print_call_report :
Flx_mtypes2.sym_state_t ->
Flx_types.fully_bound_symbol_table_t -> Pervasives.out_channel -> unit
val is_recursive_call :
Flx_call.usage_table_t -> Flx_ast.bid_t -> Flx_ast.bid_t -> bool
val is_recursive : Flx_call.usage_table_t -> Flx_ast.bid_t -> bool
val cal_exe_usage :
Flx_mtypes2.sym_state_t ->
Flx_call.usage_table_t -> int -> Flx_types.bexe_t -> unit
val cal_param_usage :
Flx_mtypes2.sym_state_t ->
Flx_call.usage_table_t ->
Flx_ast.range_srcref -> int -> Flx_types.bparameter_t -> unit
val use_closure : Flx_call.usage_table_t -> int -> Flx_mtypes1.IntSet.t
val child_use_closure :
Flx_mtypes1.IntSet.t ->
Flx_call.usage_table_t -> int -> Flx_mtypes1.IntSet.t
val expr_uses :
Flx_mtypes2.sym_state_t ->
Flx_mtypes1.IntSet.t ->
Flx_call.usage_table_t ->
Flx_mtypes1.IntSet.t -> Flx_types.tbexpr_t -> Flx_mtypes1.IntSet.t
end