+let add_struct _loc name fields =
+ let loc = expr_of_loc _loc _loc in
+
+ let fields = List.map (
+ fun (name, t) -> <:expr< ($str:name$, $t$) >>
+ ) fields in
+ let fields = expr_of_list _loc fields in
+
+ <:str_item<
+ let sd = { Wrappi_types.sd_loc = $loc$;
+ sd_name = $str:name$;
+ sd_fields = Array.of_list $fields$ } in
+ Wrappi_accumulator.add_struct sd
+ >>
+