aboutsummaryrefslogtreecommitdiff
path: root/libbuild2/variable.hxx
diff options
context:
space:
mode:
authorKaren Arutyunov <karen@codesynthesis.com>2020-06-03 14:38:39 +0300
committerKaren Arutyunov <karen@codesynthesis.com>2020-06-03 16:47:34 +0300
commitf50d0d58c8eb659e803282e19cf15398e3a8e373 (patch)
treead9d6a434661cb08a89b8871601d4dc55235a8ae /libbuild2/variable.hxx
parent450c907b2a10c43748b8c15df20d92ff782269c7 (diff)
Fix $process.run() to properly handle proces_path_ex
Diffstat (limited to 'libbuild2/variable.hxx')
-rw-r--r--libbuild2/variable.hxx14
1 files changed, 10 insertions, 4 deletions
diff --git a/libbuild2/variable.hxx b/libbuild2/variable.hxx
index 9febe5e..c1cfa84 100644
--- a/libbuild2/variable.hxx
+++ b/libbuild2/variable.hxx
@@ -881,8 +881,8 @@ namespace build2
static_assert (sizeof (process_path) <= value::size_,
"insufficient space");
- // Represented as a @-pair of names. As a result it cannot be stored in a
- // container.
+ // Represented as a potential @-pair of name(s). As a result it cannot be
+ // stored in a container.
//
static process_path convert (name&&, name*);
static void assign (value&, process_path&&);
@@ -902,8 +902,9 @@ namespace build2
static_assert (sizeof (process_path_ex) <= value::size_,
"insufficient space");
- // Represented as a @-pair of names corresponding to process_path followed
- // by the name@ and checksum@ pairs. So it's a container-like.
+ // Represented as a potential @-pair of name(s) corresponding to
+ // process_path followed by the name@ and checksum@ pairs. So it's a
+ // container-like.
//
static process_path_ex convert (names&&);
static void assign (value&, process_path_ex&&);
@@ -912,6 +913,11 @@ namespace build2
static const bool empty_value = true;
static const char* const type_name;
static const build2::value_type value_type;
+
+ // Find the end of the process_path_ex value representation assuming
+ // the first name or name pair is the process_path representation.
+ //
+ static names::iterator find_end (names&);
};
// target_triplet