summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorKohei Yoshida <kohei.yoshida@collabora.com>2014-11-18 22:32:36 -0500
committerKohei Yoshida <kohei.yoshida@collabora.com>2014-11-18 22:33:20 -0500
commitbbc9992094cbab668593cd6d84659d4d1a48e44f (patch)
tree826c516c7b7e4bf43f8df0b369f3173c96bb794d /include
parent764600bc6175a32d119487afda2e8409f3395666 (diff)
Apply pimpl to svl::SharedStringPool.
Change-Id: I351505f0c1cb25c47897e0cfffdb258f8e87081f
Diffstat (limited to 'include')
-rw-r--r--include/svl/sharedstringpool.hxx27
1 files changed, 10 insertions, 17 deletions
diff --git a/include/svl/sharedstringpool.hxx b/include/svl/sharedstringpool.hxx
index e926f296bb50..16841f9491ec 100644
--- a/include/svl/sharedstringpool.hxx
+++ b/include/svl/sharedstringpool.hxx
@@ -10,16 +10,15 @@
#ifndef INCLUDED_SVL_SHAREDSTRINGPOOL_HXX
#define INCLUDED_SVL_SHAREDSTRINGPOOL_HXX
-#include <svl/sharedstring.hxx>
-#include <osl/mutex.hxx>
-
-#include <boost/unordered_map.hpp>
-#include <boost/unordered_set.hpp>
+#include <svl/svldllapi.h>
+#include <rtl/ustring.hxx>
class CharClass;
namespace svl {
+class SharedString;
+
/**
* Storage for pool of shared strings. It also provides mapping from
* original-cased strings to upper-cased strings for case insensitive
@@ -27,19 +26,16 @@ namespace svl {
*/
class SVL_DLLPUBLIC SharedStringPool
{
- typedef boost::unordered_set<OUString, OUStringHash> StrHashType;
- typedef std::pair<StrHashType::iterator, bool> InsertResultType;
- typedef boost::unordered_map<const rtl_uString*, OUString> StrStoreType;
+ struct Impl;
+ Impl* mpImpl;
- mutable osl::Mutex maMutex;
- StrHashType maStrPool;
- StrHashType maStrPoolUpper;
- StrStoreType maStrStore;
- const CharClass* mpCharClass;
+ SharedStringPool(); // disabled
+ SharedStringPool( const SharedStringPool& ); // disabled
+ SharedStringPool& operator=( const SharedStringPool& ); // disabled
public:
-
SharedStringPool( const CharClass* pCharClass );
+ ~SharedStringPool();
/**
* Intern a string object into the shared string pool.
@@ -60,9 +56,6 @@ public:
size_t getCount() const;
size_t getCountIgnoreCase() const;
-
-private:
- InsertResultType findOrInsert( StrHashType& rPool, const OUString& rStr ) const;
};
}