}
(** The type of a content field structure. *)
+type sfhash = (string, shape_field_struct) Hashtbl.t
+ (** Hash of kernel version to the shape field structure. *)
+
val minimize_shape_field_structs :
string -> string list ->
(Pahole_parser.info * Pahole_parser.structure) list ->
- shape_field_struct list * (string, shape_field_struct) Hashtbl.t
+ shape_field_struct list * sfhash
(** [minimize_shape_field_structs struct_name names kernels] returns
a minimized list of shape field structures
(a hash table of kernel version to {!shape_field_struct}).
[names] is the list of interesting kernel structures. *)
+type cfhash = (string, content_field_struct) Hashtbl.t
+ (** Hash of kernel version to the content field structure. *)
+
val minimize_content_field_structs :
string -> string list ->
(Pahole_parser.info * Pahole_parser.structure) list ->
- content_field_struct list * (string, content_field_struct) Hashtbl.t
+ content_field_struct list * cfhash
(** [minimize_content_field_structs struct_name names kernels] returns
a minimized list of content field structures
(a hash table of kernel version to {!content_field_struct}).
}
(** The type of a parser. *)
+type pahash = (string, parser_) Hashtbl.t
+ (** Hash of the kernel version to the parser. *)
+
val minimize_parsers :
string ->
(Pahole_parser.info * Pahole_parser.structure) list ->
- (string, shape_field_struct) Hashtbl.t ->
- (string, content_field_struct) Hashtbl.t ->
- parser_ list * (string, parser_) Hashtbl.t
+ sfhash -> cfhash ->
+ parser_ list * pahash
(** [minimize_parsers struct_name kernels sfhash cfhash] returns
a minimized list of parsers (a hash table of kernel version
to {!parser_}).