File tree 1 file changed +7
-3
lines changed 1 file changed +7
-3
lines changed Original file line number Diff line number Diff line change @@ -88,6 +88,11 @@ type tag_info =
88
88
{ tag_idents : (Ast .ident , (int * node_id * Ast .ty_tup )) Hashtbl .t ;
89
89
tag_nums : (int , (Ast .ident * node_id * Ast .ty_tup )) Hashtbl .t ; }
90
90
91
+ type tag_graph_node = {
92
+ mutable tgn_index : int option ;
93
+ tgn_children : opaque_id Queue .t ;
94
+ }
95
+
91
96
type ctxt =
92
97
{ ctxt_sess : Session .sess ;
93
98
ctxt_frame_args : (node_id ,node_id list ) Hashtbl .t ;
@@ -111,9 +116,8 @@ type ctxt =
111
116
ctxt_all_lvals : (node_id ,Ast .lval ) Hashtbl .t ;
112
117
ctxt_call_lval_params : (node_id ,Ast .ty array ) Hashtbl .t ;
113
118
114
- (* Each pair (a, b) in this table indicates that tag a contains all the
115
- * tags in the list b. *)
116
- ctxt_tag_containment : (opaque_id , opaque_id Queue .t ) Hashtbl .t ;
119
+ (* A directed graph that encodes the containment relation among tags. *)
120
+ ctxt_tag_containment : (opaque_id , tag_graph_node ) Hashtbl .t ;
117
121
118
122
(* definition id --> definition *)
119
123
ctxt_all_defns : (node_id ,defn) Hashtbl .t ;
You can’t perform that action at this time.
0 commit comments