diff options
author | David Robillard <d@drobilla.net> | 2009-10-15 16:50:14 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2009-10-15 16:50:14 +0000 |
commit | 0ee5ad002dbe88c791bfa48e392094bade72a12c (patch) | |
tree | 918300d71be5f8b18ce6274ec9bcb2de986916c1 /src/tuplr.hpp | |
parent | 9fe6831a3f9f0b9c062f3cd570327bfb828667d9 (diff) | |
download | resp-0ee5ad002dbe88c791bfa48e392094bade72a12c.tar.gz resp-0ee5ad002dbe88c791bfa48e392094bade72a12c.tar.bz2 resp-0ee5ad002dbe88c791bfa48e392094bade72a12c.zip |
Clean up function type system.
Unify function types globally, rather than construct a "generic type" locally, since this didn't
take into consideration captured bindings, leaving the generic type not as solved as it could be.
git-svn-id: http://svn.drobilla.net/resp/tuplr@226 ad02d1e2-f140-0410-9f75-f8b11f17cedd
Diffstat (limited to 'src/tuplr.hpp')
-rw-r--r-- | src/tuplr.hpp | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/src/tuplr.hpp b/src/tuplr.hpp index 947a62c..a89b612 100644 --- a/src/tuplr.hpp +++ b/src/tuplr.hpp @@ -375,9 +375,8 @@ struct AFn : public ATuple { return NULL; } }; - Impls impls; - mutable Subst subst; - string name; + Impls impls; + string name; }; /// Function call/application, e.g. "(func arg1 arg2)" @@ -564,10 +563,9 @@ struct TEnv : public Env<const ASymbol*, AType*> { } static Subst buildSubst(AType* fnT, const AType& argsT); - typedef map<const AST*, AType*> Vars; - typedef map<const AFn*, const AType*> GenericTypes; + typedef map<const AST*, AType*> Vars; + Vars vars; - GenericTypes genericTypes; PEnv& penv; unsigned varID; }; |