Function require_type_completeness

Synopsis

#include "breeze/diagnostics/require_type_completeness.hpp"

template <typename T>
void require_type_completeness() noexcept

Description

To be used to ensure that T is a complete type at the point of instantiation. If T is incomplete then the expression

require_type_completeness< T >()

renders the program ill-formed.

This template has a noexcept specifier so that it can be used in other noexcept functions (typically, destructors), without warnings from compilers and static analyzers.

Source

Lines 37-42 in breeze/diagnostics/require_type_completeness.hpp.

template< typename T >
void
require_type_completeness() noexcept
{
    static_cast< void >( sizeof( T ) ) ;
}