diff options
author | David Robillard <d@drobilla.net> | 2009-10-16 01:53:16 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2009-10-16 01:53:16 +0000 |
commit | c2d75892af2fdc6b9bf25365a15de5dc63bcc852 (patch) | |
tree | 22234de7261ca54f6c1d01e0ff271cbde5af0699 /src/compile.cpp | |
parent | 474b2a748bfdb55aac43bba998bc79a5c9d18675 (diff) | |
download | resp-c2d75892af2fdc6b9bf25365a15de5dc63bcc852.tar.gz resp-c2d75892af2fdc6b9bf25365a15de5dc63bcc852.tar.bz2 resp-c2d75892af2fdc6b9bf25365a15de5dc63bcc852.zip |
Cons.
git-svn-id: http://svn.drobilla.net/resp/tuplr@235 ad02d1e2-f140-0410-9f75-f8b11f17cedd
Diffstat (limited to 'src/compile.cpp')
-rw-r--r-- | src/compile.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/compile.cpp b/src/compile.cpp index d525f57..797ae2e 100644 --- a/src/compile.cpp +++ b/src/compile.cpp @@ -86,6 +86,16 @@ AIf::compile(CEnv& cenv) } CVal +ACons::compile(CEnv& cenv) +{ + const AType* type = cenv.type(this); + vector<CVal> fields; + for (const_iterator i = begin() + 1; i != end(); ++i) + fields.push_back((*i)->compile(cenv)); + return cenv.engine()->compileTup(cenv, type, fields); +} + +CVal APrimitive::compile(CEnv& cenv) { return cenv.engine()->compilePrimitive(cenv, this); |