sig
type label_map_t = (Flx_ast.bid_t, (string, int) Hashtbl.t) Hashtbl.t
val create_label_map :
Flx_types.fully_bound_symbol_table_t ->
int Pervasives.ref -> Flx_label.label_map_t
type goto_kind_t =
[ `Local of int | `Nonlocal of int * int | `Unreachable ]
val find_label :
Flx_types.fully_bound_symbol_table_t ->
Flx_label.label_map_t -> int -> string -> Flx_label.goto_kind_t
type label_kind_t = [ `Far | `Near | `Unused ]
type label_usage_t = (int, Flx_label.label_kind_t) Hashtbl.t
val create_label_usage :
Flx_mtypes2.sym_state_t ->
Flx_types.fully_bound_symbol_table_t ->
Flx_label.label_map_t -> Flx_label.label_usage_t
val get_label_kind :
Flx_label.label_map_t ->
Flx_label.label_usage_t ->
Flx_ast.bid_t -> string -> Flx_label.label_kind_t
val get_label_kind_from_index :
Flx_label.label_usage_t -> int -> Flx_label.label_kind_t
end