Utilities to manipulate array types
Static reflection templates specific to various function-like types
Templates to define types with modified qualifiers based on some input types.
Generic utility allowing to recursively visit an arbitrary type and reduce its definition to some compile-time value. It is intended to be used as an implementation cornerstone for complex type traits to avoid having to rewrite the recursive type reflection boilerplate wherever it's needed.
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).
Copyright (c) 2017 dunnhumby Germany GmbH. All rights reserved.
This package contains various template utilities that deduce types or values by reflecting on supplied type arguments and doing some compile-time manipulations on them.
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.