#ifndef BUILTIN_H_ #define BUILTIN_H_ #include #include #include "module.h" #include "localscope.h" class Builtins { public: typedef boost::unordered_map FunctionContainer; typedef boost::unordered_map ModuleContainer; static Builtins *instance(bool erase = false); static void init(const char *name, class AbstractModule *module); static void init(const char *name, class AbstractFunction *function); void initialize(); std::string isDeprecated(const std::string &name); const LocalScope &getGlobalScope() { return this->globalscope; } private: Builtins(); ~Builtins(); LocalScope globalscope; boost::unordered_map deprecations; }; #endif