Module Wax_lang.OutputSource

Pretty-printing for Wax.

Sourceval width : int

Target line width for Wax output (the Rust Style Guide's default of 100). Pass it as Printer.run's ?width at every Wax module render to a real formatter.

Sourceval instr : Wax_utils.Printer.t -> _ Ast.instr -> unit
Sourceval valtype : Wax_utils.Printer.t -> Ast.valtype -> unit
Sourceval comptype : Wax_utils.Printer.t -> Ast.comptype -> unit
Sourceval valtype_styled : Wax_utils.Styled_printer.t -> Ast.valtype -> unit

Render a type into a caller-supplied styled printer, so it shares a diagnostic message's colour theme and width.

Sourceval comptype_styled : Wax_utils.Styled_printer.t -> Ast.comptype -> unit
Sourceval storagetype : Wax_utils.Printer.t -> Ast.storagetype -> unit
Sourceval fieldtype : Wax_utils.Printer.t -> Ast.fieldtype -> unit

Print a named type definition, type name = …;. Small definitions stay on one line.

Sourceval module_ : ?color:Wax_utils.Colors.flag -> ?out_channel:out_channel -> ?tail:Wax_utils.Trivia.entry list -> ?collect:(Ast.location, unit) Hashtbl.t -> Wax_utils.Printer.t -> trivia:Wax_utils.Trivia.t -> Ast.location Ast.module_ -> unit

collect, when given, runs as a dry pass that records every looked-up location into the table (pass an empty trivia); use it to drive Wax_utils.Trivia.associate's only argument.