MomoLib
A small C++ library for personal usage. Initially it contained some code snippets that I used in programming contests, but now I also add some useful classes from my other projects. Also, it contains some concepts that I would be glad to see in C++.
This library is still in progress. There CAN be bugs in the code. If you find one - create issue/pull request, I will fix them as soon as possible.
note: MXengineLib folder contains up-to-date utility classes from MxEngine library, which is distributed under BSD-3 license.
for now there is implementation of:
- matrices in C++: matrix.h
- easy get-time/date: timeutils.h
- splay tree in C++: splay_tree.h
- treap class in C++: treap.h
- delegate class in C++: delegate.h
- event class in C++: event.h
- big integers in C++: big_integer.h & big_integer.cpp or big_integer.hpp
- slab allocator: slab_allocator.h
- some helpful print functions and more: utils.h
- Alexandrescu metaprogramming classes: meta.h
- event dispatcher class: MxEngineLib/EventDispatcher.h
- compile-time string hash: MxEngineLib/EventDispatcher.h
- linear allocator class: MxEngineLib/LinearAllocator.h
- stack allocator class: MxEngineLib/StackAllocator.h
- pool allocator class: MxEngineLib/PoolAllocator.h
- random allocator class: MxEngineLib/RandomAllocator.h
- chunk allocator class: MxEngineLib/ChunkAllocator.h
- double-buffer allocator class: MxEngineLib/DoublebufferAllocator.h