ocean.meta.traits

This package contains various template utilities that allow to reason about types in some way. Most traits answer simple boolean question about parameter type having certain qualities ("traits") thus the name.

Modules

Aggregates
module ocean.meta.traits.Aggregates

Traits for aggregate types - structs, classes, unions.

Aggregates_test
module ocean.meta.traits.Aggregates_test
Undocumented in source.
Arrays
module ocean.meta.traits.Arrays

Traits for arrays and array-like types.

Basic
module ocean.meta.traits.Basic

Basic traits allowing to distinguish various types between each other. Any more convoluted traits dedicated to specific type kinds should go in dedicated modules.

Indirections
module ocean.meta.traits.Indirections

Traits specializing in finding out indirections within compound types.

Public Imports

ocean.meta.traits.Basic
public import ocean.meta.traits.Basic;
ocean.meta.traits.Indirections
public import ocean.meta.traits.Indirections;

Meta

License

Boost Software License Version 1.0. See LICENSE_BOOST.txt for details. Alternatively, this file may be distributed under the terms of the Tango 3-Clause BSD License (see LICENSE_BSD.txt for details).