summaryrefslogtreecommitdiff
path: root/src/module.h
diff options
context:
space:
mode:
authorMarius Kintel <marius@kintel.net>2011-09-03 04:10:36 (GMT)
committerMarius Kintel <marius@kintel.net>2011-09-03 04:10:36 (GMT)
commit6f632190a05417d44193e3b16a7b3000b2cc1145 (patch)
tree9ddccef57c10361a7019274f79f1d86edb7630d3 /src/module.h
parent3129189342f3da7322efa0b860ff3ff676ba7b77 (diff)
Ported a bunch of stuff from Qt to STL
Diffstat (limited to 'src/module.h')
-rw-r--r--src/module.h51
1 files changed, 27 insertions, 24 deletions
diff --git a/src/module.h b/src/module.h
index b680ea1..5262bfc 100644
--- a/src/module.h
+++ b/src/module.h
@@ -1,20 +1,20 @@
#ifndef MODULE_H_
#define MODULE_H_
-#include <QString>
-#include <QVector>
-#include <QHash>
+#include <string>
+#include <vector>
+#include <boost/unordered_map.hpp>
#include "value.h"
class ModuleInstantiation
{
public:
- QString label;
- QString modname;
- QVector<QString> argnames;
- QVector<class Expression*> argexpr;
- QVector<Value> argvalues;
- QVector<ModuleInstantiation*> children;
+ std::string label;
+ std::string modname;
+ std::vector<std::string> argnames;
+ std::vector<class Expression*> argexpr;
+ std::vector<Value> argvalues;
+ std::vector<ModuleInstantiation*> children;
bool tag_root;
bool tag_highlight;
@@ -24,7 +24,7 @@ public:
ModuleInstantiation() : tag_root(false), tag_highlight(false), tag_background(false), ctx(NULL) { }
virtual ~ModuleInstantiation();
- QString dump(QString indent) const;
+ std::string dump(const std::string &indent) const;
class AbstractNode *evaluate(const Context *ctx) const;
};
@@ -32,7 +32,7 @@ class IfElseModuleInstantiation : public ModuleInstantiation {
public:
virtual ~IfElseModuleInstantiation();
- QVector<ModuleInstantiation*> else_children;
+ std::vector<ModuleInstantiation*> else_children;
};
class AbstractModule
@@ -40,37 +40,40 @@ class AbstractModule
public:
virtual ~AbstractModule();
virtual class AbstractNode *evaluate(const Context *ctx, const ModuleInstantiation *inst) const;
- virtual QString dump(QString indent, QString name) const;
+ virtual std::string dump(const std::string &indent, const std::string &name) const;
};
class Module : public AbstractModule
{
public:
- QHash< QString, Module*> usedlibs;
+ typedef boost::unordered_map<std::string, class Module*> ModuleContainer;
+ ModuleContainer usedlibs;
struct libs_cache_ent {
Module *mod;
- QString cache_id, msg;
+ std::string cache_id, msg;
};
- static QHash<QString, libs_cache_ent> libs_cache;
- static Module *compile_library(QString filename);
+ static boost::unordered_map<std::string, libs_cache_ent> libs_cache;
+ static Module *compile_library(std::string filename);
- QVector<QString> argnames;
- QVector<Expression*> argexpr;
+ std::vector<std::string> argnames;
+ std::vector<Expression*> argexpr;
- QVector<QString> assignments_var;
- QVector<Expression*> assignments_expr;
+ std::vector<std::string> assignments_var;
+ std::vector<Expression*> assignments_expr;
- QHash<QString, class AbstractFunction*> functions;
- QHash<QString, AbstractModule*> modules;
+ typedef boost::unordered_map<std::string, class AbstractFunction*> FunctionContainer;
+ FunctionContainer functions;
+ typedef boost::unordered_map<std::string, AbstractModule*> AbstractModuleContainer;
+ AbstractModuleContainer modules;
- QVector<ModuleInstantiation*> children;
+ std::vector<ModuleInstantiation*> children;
Module() { }
virtual ~Module();
virtual AbstractNode *evaluate(const Context *ctx, const ModuleInstantiation *inst) const;
- virtual QString dump(QString indent, QString name) const;
+ virtual std::string dump(const std::string &indent, const std::string &name) const;
};
#endif
contact: Jan Huwald // Impressum