Templates to define types with modified qualifiers based on some input
types.
Many of helper templates here have been added because of D1 to D2 migration
to hide behind them qualifiers not supported in D1 (const, immutable,
inout). Others, like Unqual, are generally useful even outside of
migration context.
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.
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).
Templates to define types with modified qualifiers based on some input types.
Many of helper templates here have been added because of D1 to D2 migration to hide behind them qualifiers not supported in D1 (const, immutable, inout). Others, like Unqual, are generally useful even outside of migration context.
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.