From 96ff5e7e7e55673969c3425e8f54d0b8f3d69643 Mon Sep 17 00:00:00 2001
From: Thierry Martinez <Thierry.Martinez@inria.fr>
Date: Tue, 3 Mar 2020 01:49:51 +0100
Subject: [PATCH] Update for traverse

---
 clangml-transforms/dune          |  2 +-
 clangml-transforms/for_memcad.ml | 14 ++++++++------
 dune-project                     |  3 ++-
 3 files changed, 11 insertions(+), 8 deletions(-)

diff --git a/clangml-transforms/dune b/clangml-transforms/dune
index 9ec6bb5..1adf514 100644
--- a/clangml-transforms/dune
+++ b/clangml-transforms/dune
@@ -3,4 +3,4 @@
   (public_name clangml-transforms)
   (preprocess (pps refl.ppx))
   (wrapped false)
-  (libraries clangml refl dolog))
+  (libraries clangml refl dolog traverse))
diff --git a/clangml-transforms/for_memcad.ml b/clangml-transforms/for_memcad.ml
index b1f08d3..0d841f0 100644
--- a/clangml-transforms/for_memcad.ml
+++ b/clangml-transforms/for_memcad.ml
@@ -167,14 +167,16 @@ let plus_with_warning (a : accu) (b : accu) : accu =
   Free_monoid.plus a b
 
 module Applicative =
-  Refl.Visit.EnvT (struct type t = env end)
-    (Refl.Visit.ReduceT (struct
-      type t = accu
+  Traverse.Applicative.Env (struct type t = env end)
+    (Traverse.Applicative.Pair
+      (Traverse.Applicative.Map)
+      (Traverse.Applicative.Reduce (struct
+        type t = accu
 
-      let zero = Free_monoid.zero
+        let zero = Free_monoid.zero
 
-      let ( + ) = plus_with_warning
-    end) (Refl.Visit.Map))
+        let ( + ) = plus_with_warning
+      end)))
 
 module rec Visitor : Refl.Visit.VisitorS
 with type 'a Applicative.t = 'a Applicative.t = struct
diff --git a/dune-project b/dune-project
index 39ccdc4..b908bf2 100644
--- a/dune-project
+++ b/dune-project
@@ -18,4 +18,5 @@
   (ocaml (and (>= 4.03.0) (< 4.11.0)))
   (dune (>= 2.2.0))
   (clangml (>= 4.1.0))
-  (dolog (>= 4.0.0))))
+  (dolog (>= 4.0.0))
+  (traverse (>= 0.1.0))))
-- 
GitLab