Remove interpret'
This commit is contained in:
parent
3e9bc8c0c3
commit
ec3a3bf673
|
@ -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
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue