aboutsummaryrefslogtreecommitdiff
path: root/src/server/shared/Utilities/Util.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/shared/Utilities/Util.h')
-rw-r--r--src/server/shared/Utilities/Util.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/server/shared/Utilities/Util.h b/src/server/shared/Utilities/Util.h
index 68886bb0d42..bfe1eec5265 100644
--- a/src/server/shared/Utilities/Util.h
+++ b/src/server/shared/Utilities/Util.h
@@ -312,6 +312,29 @@ void hexEncodeByteArray(uint8* bytes, uint32 arrayLen, std::string& result);
#define PAIR64_LOPART(x) (uint32)(uint64(x) & UI64LIT(0x00000000FFFFFFFF))
#endif
+// simple class for not-modifyable list
+template <typename T>
+class HookList
+{
+ typedef typename std::list<T>::iterator ListIterator;
+ private:
+ typename std::list<T> m_list;
+ public:
+ HookList<T> & operator+=(T t)
+ {
+ m_list.push_back(t);
+ return *this;
+ }
+ ListIterator begin()
+ {
+ return m_list.begin();
+ }
+ ListIterator end()
+ {
+ return m_list.end();
+ }
+};
+
class flag96
{
private: