blob: 3cdf219562d5457e7cb5daf03bee8ce51b5ac0f4 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
open Types
type special_export = Re_export_all | Fake_export_all
type exports = {
export_ok : (context * string) list;
export_auto : (context * string) list;
export_tags : (string * (context * string) list) list;
special_export : special_export option;
}
type uses = (string * ((context * string) list option * pos)) list
type prototype = {
proto_nb_min : int ;
proto_nb_max : int option ;
}
type variable_used = Access_none | Access_write_only | Access_various
type per_package = {
package_name : string ; has_package_name : bool ;
vars_declared : (context * string, pos * variable_used ref * prototype option) Hashtbl.t;
imported : ((context * string) * (string * variable_used ref * prototype option)) list option ref;
exports : exports ;
uses : uses ;
required_packages : (string * pos) list ;
body : fromparser list;
isa : (string * pos) list option ;
}
type per_file = {
file_name : string ;
require_name : string option ;
lines_starts : int list ;
build_time : float ;
packages : per_package list ;
from_basedir : bool ;
}
val empty_exports : exports
val ignore_package : string -> unit
val use_lib : string list ref
val uses_external_package : string -> bool
val findfile : string list -> string -> string
val get_global_info_from_package : bool -> string option -> float -> fromparser list -> per_file
val has_proto : string option -> fromparser -> ((context * string) list * pos * fromparser list) option
val get_vars_declaration : (context * string * string, pos * prototype option) Hashtbl.t -> string -> per_package -> unit
val die_with_pos : string * int * int -> string -> 'a
val warn_with_pos : Types.warning list -> string * int * int -> string -> unit
val fold_tree : ('a -> fromparser -> 'a option) -> 'a -> fromparser -> 'a
val from_qw : fromparser -> (context * string) list
|