package created using the webbuild interface [release 1.3.2-1mamba;Sat Feb 12 2022]

This commit is contained in:
Silvan Calarco 2024-01-06 07:52:36 +01:00
parent f1e84a7b2d
commit 69c051478e
3 changed files with 430 additions and 0 deletions

View File

@ -1,2 +1,4 @@
# ocaml-easy-format # ocaml-easy-format
Pretty-printing library for OCaml.

72
ocaml-easy-format.spec Normal file
View File

@ -0,0 +1,72 @@
%define ocamlpck easy-format
Name: ocaml-easy-format
Version: 1.3.2
Release: 1mamba
Summary: Pretty-printing library for OCaml
Group: System/Libraries/OCaml
Vendor: openmamba
Distribution: openmamba
Packager: Silvan Calarco <silvan.calarco@mambasoft.it>
URL: https://github.com/ocaml-community/easy-format
Source: https://github.com/ocaml-community/easy-format.git/%{version}/easy-format-%{version}.tar.bz2
Patch0: ocaml-easy_format-1.3.2-compile.patch
License: BSD
## AUTOBUILDREQ-BEGIN
BuildRequires: glibc-devel
BuildRequires: ocaml
## AUTOBUILDREQ-END
BuildRequires: dune
BuildRequires: ocaml
BuildRequires: ocaml-findlib
%description
%{summary}.
%package devel
Group: Development/Libraries/OCaml
Summary: Development files for %{name}
Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release}
%description devel
This package contains libraries and signature files for developing applications that use %{name}.
%debug_package
%prep
%setup -q -n easy-format-%{version}
%patch0 -p1 -b .compile
%build
dune build
%install
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
DESTDIR=%{buildroot} dune install --prefix "/usr" --libdir "%{_lib}/ocaml"
rm -rf %{buildroot}/usr/doc
%clean
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
%files
%defattr(-,root,root)
%dir %{_libdir}/ocaml/%{ocamlpck}
%{_libdir}/ocaml/%{ocamlpck}/*
%exclude %{_libdir}/ocaml/%{ocamlpck}/*.a
%exclude %{_libdir}/ocaml/%{ocamlpck}/*.cmx
%exclude %{_libdir}/ocaml/%{ocamlpck}/*.cmxa
%exclude %{_libdir}/ocaml/%{ocamlpck}/*.mli
%doc LICENSE*
%files devel
%defattr(-,root,root)
%{_libdir}/ocaml/%{ocamlpck}/*.a
%{_libdir}/ocaml/%{ocamlpck}/*.cmx
%{_libdir}/ocaml/%{ocamlpck}/*.cmxa
%{_libdir}/ocaml/%{ocamlpck}/*.mli
%doc CHANGES* README.md
%changelog
* Sat Feb 12 2022 Silvan Calarco <silvan.calarco@mambasoft.it> 1.3.2-1mamba
- package created using the webbuild interface

View File

@ -0,0 +1,356 @@
diff --git a/src/easy_format.ml b/src/easy_format.ml
index a074de3..1ba907c 100644
--- a/src/easy_format.ml
+++ b/src/easy_format.ml
@@ -1,5 +1,3 @@
-open Format
-
let rev_split l =
let rec inner xs ys = function
| (x, y) :: xys ->
@@ -90,7 +88,7 @@ type t =
Atom of string * atom_param
| List of (string * string * string * list_param) * t list
| Label of (t * label_param) * t
- | Custom of (formatter -> unit)
+ | Custom of (Format.formatter -> unit)
type escape =
[ `None
@@ -199,8 +197,8 @@ struct
documentation of the Format module.
*)
let set_escape fmt escape =
- let print0, flush0 = pp_get_formatter_output_functions fmt () in
- let tagf0 = pp_get_formatter_tag_functions fmt () in
+ let print0, flush0 = Format.pp_get_formatter_output_functions fmt () [@warning "-3"] in
+ let tagf0 = Format.pp_get_formatter_tag_functions fmt () [@warning "-3"] in
let is_tag = ref false in
@@ -228,8 +226,8 @@ struct
mark_close_tag = mct
}
in
- pp_set_formatter_output_functions fmt print flush0;
- pp_set_formatter_tag_functions fmt tagf
+ Format.pp_set_formatter_output_functions fmt print flush0;
+ Format.pp_set_formatter_tag_functions fmt tagf [@warning "-3"]
let set_escape_string fmt esc =
@@ -243,7 +241,7 @@ struct
let define_styles fmt escape l =
if l <> [] then (
- pp_set_tags fmt true;
+ Format.pp_set_tags fmt true;
let tbl1 = Hashtbl.create (2 * List.length l) in
let tbl2 = Hashtbl.create (2 * List.length l) in
List.iter (
@@ -261,12 +259,12 @@ struct
in
let tagf = {
- (pp_get_formatter_tag_functions fmt ()) with
+ (Format.pp_get_formatter_tag_functions fmt () [@warning "-3"] ) with
mark_open_tag = mark_open_tag;
mark_close_tag = mark_close_tag
}
in
- pp_set_formatter_tag_functions fmt tagf
+ Format.pp_set_formatter_tag_functions fmt tagf [@warning "-3"]
);
(match escape with
@@ -279,10 +277,10 @@ struct
match p.wrap_body with
`Always_wrap
| `Never_wrap
- | `Wrap_atoms -> pp_open_hvbox fmt indent
+ | `Wrap_atoms -> Format.pp_open_hvbox fmt indent
| `Force_breaks
- | `Force_breaks_rec -> pp_open_vbox fmt indent
- | `No_breaks -> pp_open_hbox fmt ()
+ | `Force_breaks_rec -> Format.pp_open_vbox fmt indent
+ | `No_breaks -> Format.pp_open_hbox fmt ()
let extra_box p l =
let wrap =
@@ -296,8 +294,8 @@ struct
List.for_all (function Atom _ -> true | _ -> false) l
in
if wrap then
- ((fun fmt -> pp_open_hovbox fmt 0),
- (fun fmt -> pp_close_box fmt ()))
+ ((fun fmt -> Format.pp_open_hovbox fmt 0),
+ (fun fmt -> Format.pp_close_box fmt ()))
else
((fun _ -> ()),
(fun _ -> ()))
@@ -305,33 +303,33 @@ struct
let pp_open_nonaligned_box fmt p indent l =
match p.wrap_body with
- `Always_wrap -> pp_open_hovbox fmt indent
- | `Never_wrap -> pp_open_hvbox fmt indent
+ `Always_wrap -> Format.pp_open_hovbox fmt indent
+ | `Never_wrap -> Format.pp_open_hvbox fmt indent
| `Wrap_atoms ->
if List.for_all (function Atom _ -> true | _ -> false) l then
- pp_open_hovbox fmt indent
+ Format.pp_open_hovbox fmt indent
else
- pp_open_hvbox fmt indent
+ Format.pp_open_hvbox fmt indent
| `Force_breaks
- | `Force_breaks_rec -> pp_open_vbox fmt indent
- | `No_breaks -> pp_open_hbox fmt ()
+ | `Force_breaks_rec -> Format.pp_open_vbox fmt indent
+ | `No_breaks -> Format.pp_open_hbox fmt ()
let open_tag fmt = function
None -> ()
- | Some s -> pp_open_tag fmt s
+ | Some s -> Format.pp_open_tag fmt s [@warning "-3"]
let close_tag fmt = function
None -> ()
- | Some _ -> pp_close_tag fmt ()
+ | Some _ -> Format.pp_close_tag fmt () [@warning "-3"]
let tag_string fmt o s =
match o with
- None -> pp_print_string fmt s
+ None -> Format.pp_print_string fmt s
| Some tag ->
- pp_open_tag fmt tag;
- pp_print_string fmt s;
- pp_close_tag fmt ()
+ Format.pp_open_tag fmt tag [@warning "-3"] ;
+ Format.pp_print_string fmt s;
+ Format.pp_close_tag fmt () [@warning "-3"]
let rec fprint_t fmt = function
Atom (s, p) ->
@@ -354,12 +352,12 @@ struct
List.iter (
fun x ->
if p.space_before_separator then
- pp_print_string fmt " ";
+ Format.pp_print_string fmt " ";
tag_string fmt p.separator_style sep;
if p.space_after_separator then
- pp_print_space fmt ()
+ Format.pp_print_space fmt ()
else
- pp_print_cut fmt ();
+ Format.pp_print_cut fmt ();
fprint_t fmt x
) tl;
close_tag fmt p.body_style
@@ -370,12 +368,12 @@ struct
List.iter (
fun x ->
if p.space_before_separator then
- pp_print_space fmt ()
+ Format.pp_print_space fmt ()
else
- pp_print_cut fmt ();
+ Format.pp_print_cut fmt ();
tag_string fmt p.separator_style sep;
if p.space_after_separator then
- pp_print_string fmt " ";
+ Format.pp_print_string fmt " ";
fprint_t fmt x
) tl;
close_tag fmt p.body_style
@@ -387,7 +385,7 @@ struct
fprint_t fmt lab;
close_tag fmt lp.label_style;
if lp.space_after_label then
- pp_print_string fmt " "
+ Format.pp_print_string fmt " "
(* Either horizontal or vertical list *)
and fprint_list fmt label ((op, _sep, cl, p) as param) = function
@@ -395,7 +393,7 @@ struct
fprint_opt_label fmt label;
tag_string fmt p.opening_style op;
if p.space_after_opening || p.space_before_closing then
- pp_print_string fmt " ";
+ Format.pp_print_string fmt " ";
tag_string fmt p.closing_style cl
| hd :: tl as l ->
@@ -414,9 +412,9 @@ struct
tag_string fmt p.opening_style op;
if p.space_after_opening then
- pp_print_space fmt ()
+ Format.pp_print_space fmt ()
else
- pp_print_cut fmt ();
+ Format.pp_print_cut fmt ();
let open_extra, close_extra = extra_box p l in
open_extra fmt;
@@ -424,11 +422,11 @@ struct
close_extra fmt;
if p.space_before_closing then
- pp_print_break fmt 1 (-indent)
+ Format.pp_print_break fmt 1 (-indent)
else
- pp_print_break fmt 0 (-indent);
+ Format.pp_print_break fmt 0 (-indent);
tag_string fmt p.closing_style cl;
- pp_close_box fmt ()
+ Format.pp_close_box fmt ()
and fprint_list_stick_right fmt label (op, sep, cl, p) hd tl l =
let base_indent = p.indent_body in
@@ -443,9 +441,9 @@ struct
tag_string fmt p.opening_style op;
if p.space_after_opening then
- pp_print_space fmt ()
+ Format.pp_print_space fmt ()
else
- pp_print_cut fmt ();
+ Format.pp_print_cut fmt ();
let open_extra, close_extra = extra_box p l in
open_extra fmt;
@@ -454,23 +452,23 @@ struct
List.iter (
fun x ->
if p.space_before_separator then
- pp_print_break fmt 1 (-sep_indent)
+ Format.pp_print_break fmt 1 (-sep_indent)
else
- pp_print_break fmt 0 (-sep_indent);
+ Format.pp_print_break fmt 0 (-sep_indent);
tag_string fmt p.separator_style sep;
if p.space_after_separator then
- pp_print_string fmt " ";
+ Format.pp_print_string fmt " ";
fprint_t fmt x
) tl;
close_extra fmt;
if p.space_before_closing then
- pp_print_break fmt 1 (-indent)
+ Format.pp_print_break fmt 1 (-indent)
else
- pp_print_break fmt 0 (-indent);
+ Format.pp_print_break fmt 0 (-indent);
tag_string fmt p.closing_style cl;
- pp_close_box fmt ()
+ Format.pp_close_box fmt ()
@@ -479,23 +477,23 @@ struct
[] ->
tag_string fmt p.opening_style op;
if p.space_after_opening || p.space_before_closing then
- pp_print_string fmt " ";
+ Format.pp_print_string fmt " ";
tag_string fmt p.closing_style cl
| hd :: tl as l ->
tag_string fmt p.opening_style op;
if p.space_after_opening then
- pp_print_string fmt " ";
+ Format.pp_print_string fmt " ";
pp_open_nonaligned_box fmt p 0 l ;
if p.separators_stick_left then
fprint_list_body_stick_left fmt p sep hd tl
else
fprint_list_body_stick_right fmt p sep hd tl;
- pp_close_box fmt ();
+ Format.pp_close_box fmt ();
if p.space_before_closing then
- pp_print_string fmt " ";
+ Format.pp_print_string fmt " ";
tag_string fmt p.closing_style cl
@@ -512,7 +510,7 @@ struct
| _ ->
let indent = lp.indent_after_label in
- pp_open_hvbox fmt 0;
+ Format.pp_open_hvbox fmt 0;
open_tag fmt lp.label_style;
fprint_t fmt lab;
@@ -521,26 +519,26 @@ struct
(match lp.label_break with
| `Auto ->
if lp.space_after_label then
- pp_print_break fmt 1 indent
+ Format.pp_print_break fmt 1 indent
else
- pp_print_break fmt 0 indent
+ Format.pp_print_break fmt 0 indent
| `Always
| `Always_rec ->
- pp_force_newline fmt ();
- pp_print_string fmt (String.make indent ' ')
+ Format.pp_force_newline fmt ();
+ Format.pp_print_string fmt (String.make indent ' ')
| `Never ->
if lp.space_after_label then
- pp_print_char fmt ' '
+ Format.pp_print_char fmt ' '
else
()
);
fprint_t fmt x;
- pp_close_box fmt ()
+ Format.pp_close_box fmt ()
let to_formatter fmt x =
let x = rewrite x in
fprint_t fmt x;
- pp_print_flush fmt ()
+ Format.pp_print_flush fmt ()
let to_buffer ?(escape = `None) ?(styles = []) buf x =
let fmt = Format.formatter_of_buffer buf in
@@ -553,7 +551,7 @@ struct
Buffer.contents buf
let to_channel ?(escape = `None) ?(styles = []) oc x =
- let fmt = formatter_of_out_channel oc in
+ let fmt = Format.formatter_of_out_channel oc in
define_styles fmt escape styles;
to_formatter fmt x
@@ -575,9 +573,9 @@ struct
| Label (label, x) -> fprint_pair buf label x
| Custom f ->
(* Will most likely not be compact *)
- let fmt = formatter_of_buffer buf in
+ let fmt = Format.formatter_of_buffer buf in
f fmt;
- pp_print_flush fmt ()
+ Format.pp_print_flush fmt ()
and fprint_list buf (op, sep, cl, _) = function
[] -> bprintf buf "%s%s" op cl
@@ -606,7 +604,7 @@ struct
let to_formatter fmt x =
let s = to_string x in
Format.fprintf fmt "%s" s;
- pp_print_flush fmt ()
+ Format.pp_print_flush fmt ()
let to_channel oc x =
let buf = Buffer.create 500 in