Module Lcalc.To_ocaml

Formats a lambda calculus program into a valid OCaml program

val avoid_keywords : string -> string
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