Module Print.UserFacing

User-facing, localised printer

val lit : Stdlib.Format.formatter -> Shared_ast__.Definitions.lit -> unit
val value : ?fallback: (Stdlib.Format.formatter -> (('a, 'a, 't) Shared_ast__.Definitions.base_gexpr, 't Shared_ast__.Definitions.mark) Catala_utils.Mark.ed -> unit) -> Stdlib.Format.formatter -> (('a, 'a, 't) Shared_ast__.Definitions.base_gexpr, 't Shared_ast__.Definitions.mark) Catala_utils.Mark.ed -> unit

Prints a value in a localised format, intended to be read by an end-user. The language is selected by Catala_runtime.Print.set_lang

  • parameter fallback

    is called upon non-value expressions (by default, Invalid_argument is raised)

val expr : Stdlib.Format.formatter -> ((_, _, _) Shared_ast__.Definitions.base_gexpr, _ Shared_ast__.Definitions.mark) Catala_utils.Mark.ed -> unit

This combines the user-facing value printer and the generic expression printer to handle all AST nodes

val embed_option : ((('a Shared_ast__.Definitions.any, 'a Shared_ast__.Definitions.any, 'm) Shared_ast__.Definitions.base_gexpr, 'm Shared_ast__.Definitions.mark) Catala_utils.Mark.ed -> Catala_runtime.Value.t) -> Shared_ast__.Definitions.EnumConstructor.t -> (('a, 'a, 'm) Shared_ast__.Definitions.base_gexpr, 'm Shared_ast__.Definitions.mark) Catala_utils.Mark.ed -> Catala_runtime.Value.t