ocean.meta.traits.Indirections

Traits specializing in finding out indirections within compound types.

NB: because this module is often used as purely compile-time dependency it used built-in asserts instead of ocean.core.Test to reduce amount of cyclic imports. ocean.meta modules in general are not supposed to import anything outside of ocean.meta.

Members

Templates

containsDynamicArray
template containsDynamicArray(T)

Checks if T or any of its subtypes is a dynamic array.

containsMultiDimensionalDynamicArrays
template containsMultiDimensionalDynamicArrays(T)

Checks if T or any of its subtypes is a multi-dimensional dynamic array.

hasIndirections
template hasIndirections(T...)

Evaluates to true if a variable of any type in T is a reference type or has members or elements of reference types. References are - dynamic and associative arrays, - pointers (including function pointers) and delegates, - classes.

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).