Lumiera  0.pre.03
»edit your freedom«
trait-special.hpp File Reference

Go to the source code of this file.

Description

Rarely used specialisations of otherwise heavily used generic code.

Over time, we've established a set of tiny (meta)programming helpers, used pervasively all over the code base. Such widely used (header) includes incur the danger to increase compilation time and code size, and thus we spent some effort on optimising the dependencies of these headers. Typically, such analyse reveals some obscure and rare extension, which, while used occasionally, maybe even only once, would cause some increase in the "include size profile".

The obvious remedy is to move those into a separate header.

Definition in file trait-special.hpp.

#include "lib/meta/trait.hpp"
#include <unordered_map>

Classes

struct  can_STL_ForEach< std::unordered_map< KEY, VAL, HASH > >
 the std hashtable(s) are notoriously difficult to handle when it comes to detecting capabilities by metaprogramming, because the're built up from a generic baseclass and especially inherit their iterator-types as template specialisations. More...
 

Namespaces

 lib
 Implementation namespace for support and library code.