Boost.Hana  1.4.0
Your standard library for metaprogramming
boost::hana::detail::wrong<... > Struct Template Reference


struct boost::hana::detail::wrong<... >

Equivalent to a type-dependent std::false_type.

This is useful for making a static assertion that would otherwise always fire up dependent on some template parameters.


// Copyright Louis Dionne 2013-2017
// Distributed under the Boost Software License, Version 1.0.
// (See accompanying file or copy at
namespace hana = boost::hana;
template <typename T, typename U>
struct base_template {
// Can't write this because the assertion would always fire up:
// static_assert(false, "...");
// So instead we write this:
static_assert(hana::detail::wrong<base_template<T, U>>::value,
"base_template does not have a valid default definition");
template <>
struct base_template<int, int> {
// something useful
int main() { }

Inherits false_type.