Lcalc.To_ocaml
Formats a lambda calculus program into a valid OCaml program
val find_struct :
Shared_ast.StructName.t ->
Shared_ast.decl_ctx ->
Shared_ast.typ Shared_ast.StructField.Map.t
val find_enum :
Shared_ast.EnumName.t ->
Shared_ast.decl_ctx ->
Shared_ast.typ Shared_ast.EnumConstructor.Map.t
val typ_needs_parens : Shared_ast.typ -> bool
val format_enum_name : Stdlib.Format.formatter -> Shared_ast.EnumName.t -> unit
val format_enum_cons_name :
Stdlib.Format.formatter ->
Shared_ast.EnumConstructor.t ->
unit
val format_struct_name :
Stdlib.Format.formatter ->
Shared_ast.StructName.t ->
unit
val format_struct_field_name :
Stdlib.Format.formatter ->
(Shared_ast.StructName.t option * Shared_ast.StructField.t) ->
unit
val format_to_module_name :
Stdlib.Format.formatter ->
[< `Ename of Shared_ast.EnumName.t | `Sname of Shared_ast.StructName.t ] ->
unit
val format_var : Stdlib.Format.formatter -> 'm Shared_ast.Var.t -> unit
val format_program :
Stdlib.Format.formatter ->
'm Ast.program ->
Scopelang.Dependency.TVertex.t list ->
unit
Usage format_program fmt p type_dependencies_ordering