Mercurial > dedupe
view HuffmanString.cpp @ 58:7b7e84356b39
Introduce API for fine tuning inserts.
Reduce the amount of rebuilds.
| author | Tom Fredrik Blenning Klaussen <bfg@blenning.no> |
|---|---|
| date | Fri, 14 Sep 2012 00:04:24 +0200 |
| parents | 76846cb92b5c |
| children |
line wrap: on
line source
#include "HuffmanString.hpp" HuffmanSet* HuffmanString::set = 0; HuffmanString::HuffmanString(const QString& str, HuffmanSet* set) { set = this->set; if (!set) { set = new HuffmanSet(); atexit(&atExit); } this->set = set; key = set->insert(str); } void HuffmanString::atExit() { delete set; set = 0; } QString HuffmanString::toString() const { return set->value(key); } HuffmanString::operator QString() const { return toString(); } bool HuffmanString::operator<(const HuffmanString& rhs) const { return this->toString() < rhs.toString(); } bool HuffmanString::operator==(const HuffmanString& rhs) const { return this->toString() == rhs.toString(); } HuffmanSet& HuffmanString::getSet() { return *set; }
