1234567891011121314151617181920212223242526(** Plugin architecture.
OCaml-protoc generates code based on a number of plugins, each of which can
contribute code to the output files (.ml and .mli). *)typecodegen_f=?and_:unit->mode:Pb_codegen_mode.t->Pb_codegen_ocaml_type.type_->Pb_codegen_formatting.scope->bool(** A code generation function *)moduletypeS=sigvalgen_sig:codegen_f(** Generate a signature file (.mli) *)valgen_struct:codegen_f(** Generate the implementation (.ml) *)valocamldoc_title:string(** OCamldoc title *)endtypet=(moduleS)(** A plugin is a code-generator respecting the signature {!S}. *)