[m-rev.] diff: add additional modes for list.foldlN_corresponding3

Julien Fischer juliensf at csse.unimelb.edu.au
Thu Jun 14 01:47:25 AEST 2012


Branches: main, 11.07

library/list.m:
 	Add additional modes for the list.foldlN_corresponding3
 	predicates.

Julien.

Index: library/list.m
===================================================================
RCS file: /home/mercury/mercury1/repository/mercury/library/list.m,v
retrieving revision 1.208
diff -u -r1.208 list.m
--- library/list.m	5 Apr 2012 07:26:21 -0000	1.208
+++ library/list.m	13 Jun 2012 15:14:16 -0000
@@ -1050,11 +1050,19 @@
      list(A), list(B), list(C), D, D, E, E).
  :- mode list.foldl2_corresponding3(pred(in, in, in, in, out, in, out) is det,
      in, in, in, in, out, in, out) is det.
+:- mode list.foldl2_corresponding3(pred(in, in, in, in, out, mdi, muo) is det,
+    in, in, in, in, out, mdi, muo) is det.
  :- mode list.foldl2_corresponding3(pred(in, in, in, in, out, di, uo) is det,
      in, in, in, in, out, di, uo) is det.
  :- mode list.foldl2_corresponding3(
      pred(in, in, in, in, out, in, out) is semidet,
      in, in, in, in, out, in, out) is semidet.
+:- mode list.foldl2_corresponding3(
+    pred(in, in, in, in, out, mdi, muo) is semidet,
+    in, in, in, in, out, mdi, muo) is semidet.
+:- mode list.foldl2_corresponding3(
+    pred(in, in, in, in, out, di, uo) is semidet,
+    in, in, in, in, out, di, uo) is semidet.

      % list.foldl3_corresponding3(P, As, Bs, Cs, !Acc1, !Acc2, !Acc3):
      % like list.foldl_corresponding3 but with three accumulators.
@@ -1065,11 +1073,20 @@
      pred(in, in, in, in, out, in, out, in, out) is det,
      in, in, in, in, out, in, out, in, out) is det.
  :- mode list.foldl3_corresponding3(
+    pred(in, in, in, in, out, in, out, mdi, muo) is det,
+    in, in, in, in, out, in, out, mdi, muo) is det.
+:- mode list.foldl3_corresponding3(
      pred(in, in, in, in, out, in, out, di, uo) is det,
      in, in, in, in, out, in, out, di, uo) is det.
  :- mode list.foldl3_corresponding3(
      pred(in, in, in, in, out, in, out, in, out) is semidet,
      in, in, in, in, out, in, out, in, out) is semidet.
+:- mode list.foldl3_corresponding3(
+    pred(in, in, in, in, out, in, out, mdi, muo) is semidet,
+    in, in, in, in, out, in, out, mdi, muo) is semidet.
+:- mode list.foldl3_corresponding3(
+    pred(in, in, in, in, out, in, out, di, uo) is semidet,
+    in, in, in, in, out, in, out, di, uo) is semidet.

      % list.foldl4_corresponding3(P, As, Bs, Cs, !Acc1, !Acc2, !Acc3, !Acc4):
      % like list.foldl_corresponding3 but with four accumulators.
@@ -1080,11 +1097,20 @@
      pred(in, in, in, in, out, in, out, in, out, in, out) is det,
      in, in, in, in, out, in, out, in, out, in, out) is det.
  :- mode list.foldl4_corresponding3(
+    pred(in, in, in, in, out, in, out, in, out, mdi, muo) is det,
+    in, in, in, in, out, in, out, in, out, mdi, muo) is det.
+:- mode list.foldl4_corresponding3(
      pred(in, in, in, in, out, in, out, in, out, di, uo) is det,
      in, in, in, in, out, in, out, in, out, di, uo) is det.
  :- mode list.foldl4_corresponding3(
      pred(in, in, in, in, out, in, out, in, out, in, out) is semidet,
      in, in, in, in, out, in, out, in, out, in, out) is semidet.
+:- mode list.foldl4_corresponding3(
+    pred(in, in, in, in, out, in, out, in, out, mdi, muo) is semidet,
+    in, in, in, in, out, in, out, in, out, mdi, muo) is semidet.
+:- mode list.foldl4_corresponding3(
+    pred(in, in, in, in, out, in, out, in, out, di, uo) is semidet,
+    in, in, in, in, out, in, out, in, out, di, uo) is semidet.

      % list.map_foldl(Pred, InList, OutList, Start, End) calls Pred
      % with an accumulator (with the initial value of Start) on
--------------------------------------------------------------------------
mercury-reviews mailing list
Post messages to:       mercury-reviews at csse.unimelb.edu.au
Administrative Queries: owner-mercury-reviews at csse.unimelb.edu.au
Subscriptions:          mercury-reviews-request at csse.unimelb.edu.au
--------------------------------------------------------------------------



More information about the reviews mailing list