···2233type payload = { package : string }
4455-(** Walk <pkg>/lib/*.ml looking for Wire.Codec or Wire.Field usage. If found and
66- <pkg>/c/ doesn't exist, flag it. *)
75let check (ctx : Context.project) =
86 let root = ctx.project_root in
97 let try_readdir d =
···1715 if
1816 Sys.file_exists pkg_dir && Sys.is_directory pkg_dir && pkg <> "_build"
1917 && pkg <> ".git" && pkg <> "_opam"
2020- (* space-wire has its own C generation approach *)
2121- && pkg <> "space-wire"
2218 then
2319 let lib_dir = Filename.concat pkg_dir "lib" in
2420 if Sys.file_exists lib_dir && Sys.is_directory lib_dir then
···3733 (Filename.concat lib_dir f)
3834 In_channel.input_all
3935 in
4040- (* Only flag packages that define codecs, not ones
4141- that just consume them *)
4236 Astring.String.is_infix ~affix:"Wire.Codec.v " content
4337 || Astring.String.is_infix ~affix:"Codec.v \"" content
4438 with _ -> false)