package ocaml-protoc
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=c5657fcbfcbaea361beb847f72b8a6a6f36ce9e773bf285b278a0da75f988fbc
sha512=ea86d04b6293eba48360409049f907fc3e73138ec434b5d1894a2dcdaa0478f6f5a1d13f1ba87c553ddf6806a618525f621d2af862b495ce3426242a3a42e339
doc/ocaml-protoc.compiler-lib/Ocaml_protoc_compiler_lib/Pb_codegen_util/index.html
Module Ocaml_protoc_compiler_lib.Pb_codegen_util
Source
Common utility functions for OCaml code generation
let_decl_of_and and_
returns the function declaration "let"
(when ?and_ is None
), "and"
otherwise.
val string_of_record_field_type :
?module_prefix:string ->
Pb_codegen_ocaml_type.record_field_type ->
string
val string_of_field_type :
?for_pp:bool ->
?module_prefix:string ->
Pb_codegen_ocaml_type.field_type ->
string
val function_name_of_user_defined :
function_prefix:string ->
Pb_codegen_ocaml_type.user_defined_type ->
string
function_name_of_user_defined prefix user_defined
returns the function name of the form `(module'.'?)<prefix>_(type_name)`.
This pattern is common since a generated function for a type (encode/decode/to_string) will call the same generated function for each user defined field type.
Name of the module type for this service (client)
Name of the module type for this service (server)
Name of the function for this RPC
caml_file_name_of_proto_file_name filename
returns the OCaml file name from the protobuf file name
mutable_record_name record_name
returns the type name of the `mutable` type name. We use mutable types when decoding for better performance, this function encapsulate the nameing convention for this additional type.
val string_of_payload_kind :
?capitalize:unit ->
Pb_codegen_ocaml_type.payload_kind ->
bool ->
string
string_of_payload_kind ~capitalize:() payload_kind packed
will return the string corresponding to the payload kind.
this function transforms a `lower_case_like_this` into an camlCaseLikeThis
this function transform an OCaml constructuror `Like_this` into a 'likeThis' case
collect_modules_of_types ocaml_types
return the list of all the modules that the ocaml_types
depends on