12345678910111213141516171819202122232425262728(** Standard definition and types for all renderers *)typesyntax=OCaml|Reasonletstring_of_syntax=functionOCaml->"ml"|Reason->"re"typepage={filename:Fpath.t;content:Format.formatter->unit;children:pagelist;}lettraverse~ft=letrecauxnode=fnode.filenamenode.content;List.iterauxnode.childreninList.iterauxttype'at={name:string;render:'a->Types.Document.t->pagelist}letdocument_of_page~syntaxv=matchsyntaxwithReason->Reason.pagev|OCaml->ML.pagevletdocument_of_compilation_unit~syntaxv=matchsyntaxwith|Reason->Reason.compilation_unitv|OCaml->ML.compilation_unitv