mirror of https://github.com/vitalif/openscad
28 lines
556 B
C++
28 lines
556 B
C++
#ifndef CSGTEXTCACHE_H_
|
|
#define CSGTEXTCACHE_H_
|
|
|
|
#include "Tree.h"
|
|
#include <string>
|
|
#include <boost/unordered_map.hpp>
|
|
|
|
using std::string;
|
|
|
|
class CSGTextCache
|
|
{
|
|
public:
|
|
CSGTextCache(const Tree &tree) : tree(tree) {}
|
|
~CSGTextCache() {}
|
|
|
|
bool contains(const AbstractNode &node) const;
|
|
string operator[](const AbstractNode &node) const;
|
|
void insert(const class AbstractNode &node, const string & value);
|
|
void remove(const class AbstractNode &node);
|
|
void clear();
|
|
|
|
private:
|
|
boost::unordered_map<string, string> cache;
|
|
const Tree &tree;
|
|
};
|
|
|
|
#endif
|