"Open Macro Library"

Project description

Open Macro Library is a library of highly reusable C macros providing a set of well-designed commonly needed functionality to C developers, like logging and debugging helpers, containers, sorting and other algorithms.

Specifically, a simple to use API is planned to be designed and implemented that exposes to applications the following functionality:

  • containers: vector, queue, stack, list (standard, circular, double-linked), tree (binary, binary double-linked), heap (array-based and tree-based), quick-extraction heap, hashmap;
  • iterators;
  • synchronization primitives (monitors and condition variables);
  • synchronized containers: pthread-based wrappers for the above types;
  • algorithms: sorting, randomizing;
  • logging (configurable log levels and the sort);
  • debugging (memory allocation tracing, leakages detection);
  • exception handling;
  • OO typing (inheritance, support for associations);
  • serialization.
Go straight to the documentation pages in order to get an idea of the syntax.