summaryrefslogtreecommitdiffstats
path: root/src/global_checks.mli
diff options
context:
space:
mode:
Diffstat (limited to 'src/global_checks.mli')
-rw-r--r--src/global_checks.mli26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/global_checks.mli b/src/global_checks.mli
new file mode 100644
index 0000000..9edacbf
--- /dev/null
+++ b/src/global_checks.mli
@@ -0,0 +1,26 @@
+open Types
+open Tree
+
+type state = {
+ per_files : (string, per_file) Hashtbl.t ;
+ per_packages : (string, per_package) Hashtbl.t ;
+ methods : (string, (string * variable_used ref * prototype option) list) Hashtbl.t ;
+ global_vars_used : ((context * string * string) * pos) list ref ;
+ packages_being_classes : (string, unit) Hashtbl.t ;
+ packages_dependencies : (string * string, unit) Hashtbl.t ;
+ packages_dependencies_maybe : (string * string * string, unit) Hashtbl.t ;
+ }
+
+val default_per_files : unit -> (string, per_file) Hashtbl.t
+val default_state : (string, per_file) Hashtbl.t -> state
+val check_tree : state -> per_package -> unit
+val add_file_to_files : (string, per_file) Hashtbl.t -> per_file -> unit
+val add_package_to_state : state -> per_package -> unit
+val check_unused_vars : per_package -> unit
+val arrange_global_vars_declared : (context * string * string, pos * Tree.prototype option) Hashtbl.t -> state -> state
+val get_methods_available : state -> state
+
+val read_packages_from_cache : (string, per_file) Hashtbl.t -> string -> unit
+val write_packages_cache : (string, per_file) Hashtbl.t -> string -> unit
+
+val generate_package_dependencies_graph : state -> string -> unit