aboutsummaryrefslogtreecommitdiff
path: root/libbuild2/variable.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'libbuild2/variable.cxx')
-rw-r--r--libbuild2/variable.cxx15
1 files changed, 14 insertions, 1 deletions
diff --git a/libbuild2/variable.cxx b/libbuild2/variable.cxx
index e0502ef..9009fdc 100644
--- a/libbuild2/variable.cxx
+++ b/libbuild2/variable.cxx
@@ -1083,7 +1083,7 @@ namespace build2
const string& k ((i++)->value);
- // NOTE: see also build::script::parser::parse_program().
+ // NOTE: see also find_end() below.
//
if (k == "name")
{
@@ -1107,6 +1107,19 @@ namespace build2
return pp;
}
+ names::iterator value_traits<process_path_ex>::
+ find_end (names& ns)
+ {
+ auto b (ns.begin ()), i (b), e (ns.end ());
+ for (i += i->pair ? 2 : 1; i != e && i->pair; i += 2)
+ {
+ if (!i->simple () || (i->value != "name" && i->value != "checksum"))
+ break;
+ }
+
+ return i;
+ }
+
static void
process_path_ex_assign (value& v, names&& ns, const variable* var)
{