From 0b6079aabc6de3898dc0a081788ade98a8007bb4 Mon Sep 17 00:00:00 2001 From: Andre Maroneze <andre.maroneze@cea.fr> Date: Mon, 16 Sep 2024 18:22:55 +0200 Subject: [PATCH] [pretty_utils] add pp_escaped --- src/libraries/utils/pretty_utils.ml | 4 ++++ src/libraries/utils/pretty_utils.mli | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/src/libraries/utils/pretty_utils.ml b/src/libraries/utils/pretty_utils.ml index b4509110557..cf7bc17c9d7 100644 --- a/src/libraries/utils/pretty_utils.ml +++ b/src/libraries/utils/pretty_utils.ml @@ -132,6 +132,10 @@ let pp_pair let escape_underscores = Str.global_replace (Str.regexp_string "_") "__" +let pp_escaped pp fmt e = + let s = Format.asprintf "%a" pp e in + Format.fprintf fmt "%s" (String.escaped s) + let pp_flowlist ?(left=format_of_string "(") ?(sep=format_of_string ",") ?(right=format_of_string ")") f out = function | [] -> Format.fprintf out "%(%)%(%)" left right diff --git a/src/libraries/utils/pretty_utils.mli b/src/libraries/utils/pretty_utils.mli index 4e362218214..12c9d35b3ec 100644 --- a/src/libraries/utils/pretty_utils.mli +++ b/src/libraries/utils/pretty_utils.mli @@ -143,6 +143,10 @@ val pp_trail : 'a formatter -> 'a formatter (** pretty-prints its contents inside an '(** ... **)' horizontal block trailed with '*' *) +val pp_escaped: 'a formatter -> 'a formatter +(** [pp_escaped pp e] pretty-prints [e] with [String.escaped]. + @since Frama-C+dev *) + (* ********************************************************************** *) (** {2 Description Lists (margins)} *) (* ********************************************************************** *) -- GitLab