jplus-0.4.6
|
00001 /* -*- mode: c++; indent-tabs-mode:nil -*- */ 00002 #ifndef JPLUS_H 00003 #define JPLUS_H 00004 00005 #include <istream> 00006 #include <vector> 00007 #include <set> 00008 #include "jengine.h" 00009 00010 class BasicBlock; 00011 00015 class jplus: public jengine { 00016 private: 00017 BasicBlock* program; 00018 00019 public: 00021 jplus(); 00022 00026 bool init(std::istream &script); 00027 00029 ~jplus(); 00030 00036 bool set(std::string name, jarray data); 00037 00042 jarray get(std::string name); 00043 00049 std::vector<std::string> getProgram(std::set<std::string> vars); 00050 00054 std::vector<std::string> getProgram(); 00055 00056 protected: 00061 virtual void libInit(); 00062 00063 private: 00064 // copy disabled 00065 jplus(const jplus &); 00066 const jplus& operator=(const jplus&); 00067 }; 00068 00069 #endif