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