From 9f3eb956d3f24c490680fe89d570bf6eda19a7a9 Mon Sep 17 00:00:00 2001 From: Rudi Grinberg Date: Thu, 22 Mar 2018 22:42:42 +0800 Subject: [PATCH] Add Env.update --- src/env.ml | 3 +++ src/env.mli | 3 +++ 2 files changed, 6 insertions(+) diff --git a/src/env.ml b/src/env.ml index 69a9ab75..4546584f 100644 --- a/src/env.ml +++ b/src/env.ml @@ -77,3 +77,6 @@ let diff x y = | Some _ -> None | None -> vx) |> make + +let update t ~var ~f = + make (Map.update t.vars var ~f) diff --git a/src/env.mli b/src/env.mli index 37cd5fe1..904a8d15 100644 --- a/src/env.mli +++ b/src/env.mli @@ -23,4 +23,7 @@ val add : t -> var:Var.t -> value:string -> t val diff : t -> t -> t +val update : t -> var:string -> f:(string option -> string option) -> t + val sexp_of_t : t -> Sexp.t +