Module Types.TypePrinter

module TypePrinter: sig .. end
Our not-so-pretty printer for types.

val print_var : TypeCore.env -> TypeCore.name -> MzPprint.document
val pvar : Buffer.t -> TypeCore.env * TypeCore.name -> unit
val print_datacon : Datacon.name -> MzPprint.document
val print_field_name : TypeCore.Field.name -> MzPprint.document
val print_field : SurfaceSyntax.field -> MzPprint.document
val p_kind : Buffer.t -> Kind.kind -> unit
val print_names : TypeCore.env -> TypeCore.name list -> MzPprint.document
val pnames : Buffer.t -> TypeCore.env * TypeCore.name list -> unit
val pname : Buffer.t -> TypeCore.env * TypeCore.var -> unit
val print_quantified : TypeCore.env ->
string -> TypeCore.name -> Kind.kind -> TypeCore.typ -> MzPprint.document
val print_point : TypeCore.env -> TypeCore.var -> MzPprint.document
val print_type : TypeCore.env -> TypeCore.typ -> MzPprint.document
val print_constraint : TypeCore.env -> TypeCore.mode_constraint -> MzPprint.document
val print_data_field_def : TypeCore.env -> TypeCore.data_field_def -> MzPprint.document
val print_branch : TypeCore.env -> TypeCore.branch -> MzPprint.document
val pfact : Buffer.t -> Fact.fact -> unit
val print_facts : TypeCore.env -> MzPprint.document
val print_permission_list : TypeCore.env * TypeCore.typ list -> MzPprint.document
val ppermission_list : Buffer.t -> TypeCore.env * TypeCore.var -> unit
val print_permissions : TypeCore.env -> MzPprint.document
val ppermissions : Buffer.t -> TypeCore.env -> unit
val ptype : Buffer.t -> TypeCore.env * TypeCore.typ -> unit
val penv : Buffer.t -> TypeCore.env -> unit
val pconstraint : Buffer.t -> TypeCore.env * TypeCore.mode_constraint -> unit
val print_binders : TypeCore.env -> MzPprint.document