/* * NonPrimitiveFunction.h * * Created on: Feb 10, 2010 * Author: petergoodman * Version: $Id$ */ #ifndef DERIVEDFUNCTION_H_ #define DERIVEDFUNCTION_H_ #include #include #include #include "Token.h" #include "IFunction.h" #include "TokenGenerator.h" #include "TokenStackConstraint.h" using namespace std; /** * Type representing a function in clyde that can be constructed from * other functions and isn't implemented in C++. */ template::size_type num_args> struct DerivedFunction : public IFunction { DerivedFunction(string expand); virtual ~DerivedFunction(); virtual void call(deque &stack, deque &tokens, map &symbols); private: deque toks; }; #endif /* DERIVEDFUNCTION_H_ */