package ocaml-protoc

  1. Overview
  2. Docs
Pure OCaml compiler for .proto files

Install

dune-project
 Dependency

Authors

Maintainers

Sources

ocaml-protoc-4.0.tbz
sha256=88533848ee8ad662bfb063f34932286405977fa3810515b997119b06f05105e4
sha512=df12c71f7181eafc94cd0fc400edf7f258cdd3740a5badafce097f771b7828fed9a9a9c0a457e7e118848a8b1ddd87fe3134a5bdf88d4adcb0d0e04ba6808c5f

doc/ocaml-protoc.compiler-lib/Ocaml_protoc_compiler_lib/Pb_codegen_formatting/index.html

Module Ocaml_protoc_compiler_lib.Pb_codegen_formattingSource

Formatting utilities for code generation

types

Sourcetype scope

A scope is a formatting container which can contains line of text as well as other nested scopes

In other word a scope define an indentation section.

Creation

Sourceval empty_scope : unit -> scope

empty_scope () returns a brand new scope

Sourceval line : scope -> string -> unit

line scope s adds s to scope

Sourceval linep : scope -> ('a, unit, string, unit) format4 -> 'a
Sourceval empty_line : scope -> unit

empty_line scope adds an empty line to scope

Sourceval sub_scope : scope -> (scope -> unit) -> unit

sub_scope scope f adds a sub scope and apply f to it.

Sourceval sub_scope_if : bool -> scope -> (scope -> unit) -> unit

sub_scope_if b scope f adds a sub scope if b is true, and calls f with the current scope or the sub scope.

Printing

Sourceval to_string : scope -> string

print scope returns the formatted scops with a 2 character indentation for each scope.

Sourceval output : out_channel -> scope -> unit

Write to output