Personal all-purpose utility library
Go to file
doylet 765b8255f7 Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
External Bundle external libraries with the include files 2024-02-26 21:04:02 +11:00
Standalone Compile on Linux again, fix comment warning, implement output capture on exec on posix 2024-03-25 16:11:57 +11:00
.gitignore Inline the code directory 2021-08-09 09:03:15 +10:00
_clang-format dqn: Implement stack trace for windows 2023-08-31 01:03:48 +10:00
build.bat Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
build.sh Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn.cpp Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn.h Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn_allocator.cpp Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn_allocator.h Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn_avx512f.cpp Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn_avx512f.h Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn_base.cpp Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn_base.h Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn_cgen.cpp Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn_cgen.h Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn_containers.cpp Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn_containers.h Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn_cppbuild.h Add capturing of stdout/stderr output in exec API 2024-03-25 13:14:05 +11:00
dqn_debug.cpp Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn_debug.h Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn_docs.cpp Compile on Linux again, fix comment warning, implement output capture on exec on posix 2024-03-25 16:11:57 +11:00
dqn_external.cpp Compile on Linux again, fix comment warning, implement output capture on exec on posix 2024-03-25 16:11:57 +11:00
dqn_external.h Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn_hash.cpp Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn_hash.h Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn_helpers.cpp Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn_helpers.h Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn_json.cpp Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn_json.h Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn_math.cpp Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn_math.h Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn_os.cpp Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn_os.h Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn_os_posix.cpp Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn_os_win32.cpp Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn_os_win32.h Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn_string.cpp Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn_string.h Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn_thread_context.cpp Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn_thread_context.h Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn_type_info.cpp Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn_type_info.h Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn_unit_tests.cpp Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
dqn_win32.h Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00
readme.md Pull in bug fixes from upstream 2024-04-18 22:59:11 +10:00

readme.md

Dqn

My personal standard library that provides allocator aware data structures, custom memory allocators and various miscellaneous helpers for prototyping. The library is a unity-build style library where data structures and functions are separated by category into files for organisation. You only need to include dqn.h which amalgamates all the files into one translation unit.

Build

To build with this library, copy all the *.[h|cpp] files at the root of the repository to your desired location and compile dqn.cpp or include it into one of your translation units.

Finally ensure that the compiler has in its search paths for the include directory where headers are located, e.g. -I <path/to/dqn/headers>.

Customisation

The headers provide macros to compile out sections that are not needed. This can be useful to speed up compile times or reduce binary size if you only need a particular part of the library. Each header contains a table-of-contents that denotes the macro to define to disable that section that should be defined before the header include.

#define DQN_NO_VARRAY       // Disable virtual array container
#define DQN_NO_JSON_BUILDER // Disable the JSON string builder
#include "dqn.h"