aboutsummaryrefslogtreecommitdiffstats
path: root/src/tuplr.hpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2009-10-15 16:58:33 +0000
committerDavid Robillard <d@drobilla.net>2009-10-15 16:58:33 +0000
commit7743d332e41c7795dcbaa49511293f22597e4db7 (patch)
treec6018e89d3265698e992a3e96b77a25ae40675b6 /src/tuplr.hpp
parentcc8d52479fea5b2f4419463daf027ec11e813dc8 (diff)
downloadresp-7743d332e41c7795dcbaa49511293f22597e4db7.tar.gz
resp-7743d332e41c7795dcbaa49511293f22597e4db7.tar.bz2
resp-7743d332e41c7795dcbaa49511293f22597e4db7.zip
Replace more use of at(0) with head().
git-svn-id: http://svn.drobilla.net/resp/tuplr@228 ad02d1e2-f140-0410-9f75-f8b11f17cedd
Diffstat (limited to 'src/tuplr.hpp')
-rw-r--r--src/tuplr.hpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/tuplr.hpp b/src/tuplr.hpp
index 02d79af..7494cdb 100644
--- a/src/tuplr.hpp
+++ b/src/tuplr.hpp
@@ -242,6 +242,7 @@ struct ATuple : public AST {
_vec = newvec;
}
const AST* head() const { assert(_len > 0); return _vec[0]; }
+ AST* head() { assert(_len > 0); return _vec[0]; }
const AST* at(size_t i) const { assert(i < _len); return _vec[i]; }
AST*& at(size_t i) { assert(i < _len); return _vec[i]; }
size_t size() const { return _len; }
@@ -290,7 +291,7 @@ struct AType : public ATuple {
bool concrete() const {
switch (kind) {
case VAR: return false;
- case PRIM: return at(0)->str() != "Nothing";
+ case PRIM: return head()->str() != "Nothing";
case EXPR:
FOREACH(const_iterator, t, *this) {
AType* kid = (*t)->to<AType*>();
@@ -307,7 +308,7 @@ struct AType : public ATuple {
else
switch (kind) {
case VAR: return id == rt->id;
- case PRIM: return at(0)->str() == rt->at(0)->str();
+ case PRIM: return head()->str() == rt->head()->str();
case EXPR: return ATuple::operator==(rhs);
}
return false; // never reached
@@ -398,7 +399,7 @@ struct ADef : public ACall {
if (!sym) {
const ATuple* tup = at(1)->to<const ATuple*>();
if (tup && !tup->empty())
- return tup->at(0)->to<const ASymbol*>();
+ return tup->head()->to<const ASymbol*>();
}
return sym;
}