From 7b05fc34b6dd360b17bf47ae0e5a7bbc26f400e6 Mon Sep 17 00:00:00 2001 From: Rudi Grinberg Date: Sun, 8 Jul 2018 14:24:19 +0700 Subject: [PATCH] Add String_with_vars.Var.name Signed-off-by: Rudi Grinberg --- src/string_with_vars.ml | 2 ++ src/string_with_vars.mli | 1 + src/super_context.ml | 6 +----- 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/src/string_with_vars.ml b/src/string_with_vars.ml index 66aca1c7..1f8e1648 100644 --- a/src/string_with_vars.ml +++ b/src/string_with_vars.ml @@ -204,6 +204,8 @@ module Var = struct | None -> Single name | Some p -> Pair (name, p) + let name { name; _ } = name + let full_name t = match destruct t with | Single s -> s diff --git a/src/string_with_vars.mli b/src/string_with_vars.mli index 3bf6ee5b..d5c73ddc 100644 --- a/src/string_with_vars.mli +++ b/src/string_with_vars.mli @@ -53,6 +53,7 @@ module Var : sig val sexp_of_t : t -> Sexp.t + val name : t -> string val loc : t -> Loc.t val full_name : t -> string diff --git a/src/super_context.ml b/src/super_context.ml index 4649fbf6..15eadc98 100644 --- a/src/super_context.ml +++ b/src/super_context.ml @@ -231,11 +231,7 @@ end = struct let static_vars = String.Table.of_list_exn static_vars let rec expand t ~syntax_version ~var = - let name = - match String_with_vars.Var.destruct var with - | Single v -> v - | Pair (v, _) -> v - in + let name = String_with_vars.Var.name var in Option.bind (String.Table.find t name) ~f:(function | Nothing v -> Some v | Since (v, min_version) ->