aboutsummaryrefslogtreecommitdiff
path: root/build2/variable
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2016-07-28 16:10:08 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2016-07-28 16:10:08 +0200
commit07ed482f1ad14eb314a17b108f91484e894e5207 (patch)
treefd21cb65e41453eecc184cbbb4fe3a356a6f5ccc /build2/variable
parentb11aaa16d404ce7dc55de6b7338dccbf053a72bd (diff)
Fix dump not to type target type/pattern-specific prepend/append
Diffstat (limited to 'build2/variable')
-rw-r--r--build2/variable8
1 files changed, 8 insertions, 0 deletions
diff --git a/build2/variable b/build2/variable
index f3fc0dd..9888aa0 100644
--- a/build2/variable
+++ b/build2/variable
@@ -720,8 +720,16 @@ namespace build2
{
iterator_adapter () = default;
iterator_adapter (const I& i): I (i) {}
+
+ // Automatically type a newly typed value on access.
+ //
typename I::reference operator* () const;
typename I::pointer operator-> () const;
+
+ // Untyped access.
+ //
+ uint16_t extra () const {return I::operator* ().second.extra;}
+ typename I::reference untyped () const {return I::operator* ();}
};
using const_iterator = iterator_adapter<map_type::const_iterator>;