aboutsummaryrefslogtreecommitdiff
path: root/build2/variable.hxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2017-12-13 14:20:54 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2017-12-13 14:22:07 +0200
commitf11d720f2fb62b46ad17d3aa3850140a4839f114 (patch)
tree7b077efc16b0362283e1857cf974090ee4ce8f26 /build2/variable.hxx
parent08688bfc12a42a0399bcbdd6fe7d30d8f2486775 (diff)
Implement info meta operation
This meta operation can be used to print basic information (name, version, source/output roots, etc) for one or more projects.
Diffstat (limited to 'build2/variable.hxx')
-rw-r--r--build2/variable.hxx12
1 files changed, 12 insertions, 0 deletions
diff --git a/build2/variable.hxx b/build2/variable.hxx
index bba2208..51cc350 100644
--- a/build2/variable.hxx
+++ b/build2/variable.hxx
@@ -546,6 +546,14 @@ namespace build2
static int
simple_compare (const value&, const value&);
+ // names
+ //
+ template <>
+ struct value_traits<names>
+ {
+ static const names& empty_instance;
+ };
+
// bool
//
template <>
@@ -783,6 +791,8 @@ namespace build2
static void prepend (value&, vector<T>&&);
static bool empty (const vector<T>& x) {return x.empty ();}
+ static const vector<T> empty_instance;
+
// Make sure these are static-initialized together. Failed that VC will
// make sure it's done in the wrong order.
//
@@ -809,6 +819,8 @@ namespace build2
return append (v, move (x));}
static bool empty (const map<K, V>& x) {return x.empty ();}
+ static const map<K, V> empty_instance;
+
// Make sure these are static-initialized together. Failed that VC will
// make sure it's done in the wrong order.
//