about summary refs log tree commit diff
path: root/src/libutil/aterm.cc
diff options
context:
space:
mode:
authorEelco Dolstra <e.dolstra@tudelft.nl>2003-11-25T12·05+0000
committerEelco Dolstra <e.dolstra@tudelft.nl>2003-11-25T12·05+0000
commit6e8c19714af00b8340eea6eecf1c38fc6b09f6de (patch)
tree861335676382dcfabb4cc073f24573158e236292 /src/libutil/aterm.cc
parentd1d87badf6d07c9d319c555593be5c6d0bd08bb4 (diff)
* Allow integer bindings in derivations.
Diffstat (limited to 'src/libutil/aterm.cc')
-rw-r--r--src/libutil/aterm.cc12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/libutil/aterm.cc b/src/libutil/aterm.cc
index dc6abf9e70e8..fb734b3a0847 100644
--- a/src/libutil/aterm.cc
+++ b/src/libutil/aterm.cc
@@ -81,6 +81,18 @@ ATMatcher & operator >> (ATMatcher & pos, const string & s)
 }
 
 
+ATMatcher & operator >> (ATMatcher & pos, int & n)
+{
+    n = 0;
+    ATerm t;
+    pos = pos >> t;
+    if (failed(pos)) return pos;
+    if (ATgetType(t) != AT_INT) return fail(pos);
+    n = ATgetInt((ATermInt) t);
+    return pos;
+}
+
+
 ATMatcher & operator >> (ATMatcher & pos, ATermList & out)
 {
     out = 0;