package ocaml-protoc
Protobuf compiler for OCaml
Install
Dune Dependency
Authors
Maintainers
Sources
2.4.0.tar.gz
md5=8a294e86c6202b8ec8016e71d19264cb
sha512=67020bef50b59c6590c1b25d85a75d6e19d6cd37d42b87c94aef798bff51a45f38fe7024b4c67d71c22c13d3f2776bec83acd77794a518f1c4a7eddfc30b6d0b
doc/ocaml-protoc.compiler-lib/Ocaml_protoc_compiler_lib/Pb_typing_recursion/index.html
Module Ocaml_protoc_compiler_lib.Pb_typing_recursion
Source
Mutually recursive type resolution
The protobuf syntax allows the definition of mutually recursive types, however this declaration is implicit (ie no dedicated syntax to group together types which are mutually recursive).
OCaml requires mutually recursive types to be defined with an explicit syntax (using the and
keyword), therefore it is necessary to find all the mutually recursive protobuf types.
This module performs the recursion analysis using the Tarjan graph algorithm to find all the Strongly Connnected Components.
group types
returns the list of all the mutually recursive group of types in reverse order of dependency. In other the last group of types of the returned list don't depend on any other types.
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>