Make.print_base
Raw generic printers base class. Those are useful for building a printer, not for consuming printers. Consumers should use the Api
functor.
val mutable current_span : Hax_engine.Span.t
val mutable span_data : Annotation.t Hax_engine.Prelude.list
val mutable current_namespace : (Hax_engine.Prelude.string
* Hax_engine.Prelude.string
Hax_engine.Prelude.list)
Hax_engine.Prelude.option
method get_span_data : unit -> Annotation.t Hax_engine.Prelude.list
method with_span : span:Hax_engine.Span.t ->
(unit -> PPrint.document) ->
PPrint.document
method concrete_ident : Hax_engine.Ast.concrete_ident fn
Print a concrete identifier.
Differentiates between encounters of the identifier in its own namespace or a foreign namespace.
method assertion_failure : 'any. Hax_engine.Prelude.string -> 'any
method set_current_namespace : (Hax_engine.Prelude.string
* Hax_engine.Prelude.string
Hax_engine.Prelude.list)
Hax_engine.Prelude.option ->
unit
method get_current_namespace : unit ->
(Hax_engine.Prelude.string
* Hax_engine.Prelude.string Hax_engine.Prelude.list)
Hax_engine.Prelude.option
method expr_at : ast_position -> {expr}47 fn
method ty_at : ast_position -> {ty}34 fn
method pat_at : ast_position -> {pat}43 fn
method item_unwrapped : {item}335 fn
method generic_param : {generic_param}298 fn
method arm : {arm}57 fn
method item : {item}335 fn
method items : {item}335 Hax_engine.Prelude.list fn
Print given list of items, separating them by two newlines each.
method attrs : Hax_engine.Ast.attrs fn
Print given list of attributes, separating them by one newline each.