The SENF Utilities Library

The Utilities Library is a collection of independent utilities.

C++ Language helpers and library extensions

Bound Member Functions

a simple Boost.Bind extension

Template meta programming helpers

Some simple tools which help to solve common meta-programming tasks

Preprocessor meta programming

Extensions to the Boost.Preprocessor library

Type traits

Extensions to the Boost.TypeTraits library

Boost.Parameter utilities

Utilities concerning the Boost.Parameter library

Boost.Phoenix extensionsPhoenix functors

Mixin classes


mixin to simplify writing classes for use with boost::intrusive_ptr


a mixin class to provide a really safe replacement for operator bool

singletonmixin to make a class a singleton

Memory Management


a portable way to efficiently allocate temporary buffers


mixin to provide pool allocation to a class

contiguous_storage_iteratortraits class to check iterator type for raw pointer accessibility

C++ Type interface


an interface to the C++ demangler of g++ to get formatted type names from typeinfo objects

TypeIdValueclass wrapping a typeid in a way that it can be used like any other value type, e.g. as the key in a map.


Exception classes

standard exception for system errors (errno)


statistics functionality


a simple but useful function to write binary data in in hexadecimal format.


calculating the 16 bit checksum used in the IP specification

Type tags

Miscellaneous type tags


Utility to join a string range into a single string (with separator)


boost::make_transform_iterator() with support for ranges

Backtrace formatting and parsing

Utilities to parse and format backtrace information as provided by the GNU libc


convert signal number to string representation

Formatingiostream formating helpers for extended formats

Correctness and testing


Boost auto unit test compatibility across Boost versions 1.33 and 1.34


SENF specific assertion macro

Boost.Test extensionsAdditional unit test extension for Boost.Test