Remove interpret'

This commit is contained in:
Rudi Grinberg 2018-05-01 18:50:51 +07:00
parent 3e9bc8c0c3
commit ec3a3bf673
1 changed files with 4 additions and 9 deletions

View File

@ -45,7 +45,7 @@ module Rules = struct
; add_rules : Rule.t list
}
let interpret' t ~preds =
let interpret t ~preds =
let rec find_set_rule = function
| [] -> None
| rule :: rules ->
@ -61,8 +61,6 @@ module Rules = struct
else
v)
let interpret t ~preds = Option.value ~default:"" (interpret' t ~preds)
let of_meta_rules (rules : Meta.Simplified.Rules.t) =
let add_rules = List.map rules.add_rules ~f:Rule.make in
let set_rules =
@ -79,9 +77,8 @@ module Vars = struct
type t = Rules.t String.Map.t
let get (t : t) var preds =
match String.Map.find t var with
| None -> None
| Some rules -> Some (Rules.interpret rules ~preds)
Option.map (String.Map.find t var) ~f:(fun r ->
Option.value ~default:"" (Rules.interpret r ~preds))
let get_words t var preds =
match get t var preds with
@ -111,9 +108,7 @@ module Config = struct
let env t =
let preds = Ps.add t.preds (P.make "env") in
String.Map.filter_map ~f:(fun rules ->
Rules.interpret' rules ~preds
) t.vars
String.Map.filter_map ~f:(Rules.interpret ~preds) t.vars
|> Env.of_string_map
end