aboutsummaryrefslogtreecommitdiff
path: root/build2/target
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2016-03-16 15:27:12 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2016-03-16 15:27:12 +0200
commit20677fb264e743b8e5423af31a7d8dc06cf509f6 (patch)
treef306f7afdff1fc1fc2818d136c631116b8e81c8c /build2/target
parentcc57e830ac1d85ad588f849d30cdaf54e55ec0d1 (diff)
Cleanup typed variable assignment
Diffstat (limited to 'build2/target')
-rw-r--r--build2/target9
1 files changed, 8 insertions, 1 deletions
diff --git a/build2/target b/build2/target
index b5e7ee9..cdf6037 100644
--- a/build2/target
+++ b/build2/target
@@ -292,7 +292,14 @@ namespace build2
assign (const variable& var) {return vars.assign (var).first;}
value&
- assign (const string& name) {return vars.assign (name).first;}
+ assign (const string& name, const build2::value_type* type = nullptr)
+ {
+ return vars.assign (name, type).first;
+ }
+
+ template <typename T>
+ value&
+ assign (const string& name) {return vars.assign<T> (name).first.get ();}
// Return a value suitable for appending. See class scope for
// details.