useif.h File Reference

Template meta-programming SFINAE helpers. More...

`#include <utl/core/impl.h>`
`#include <utl/meta/operations.h>`
`#include <utl/meta/sfinae.h>`

Go to the source code of this file.

## Namespaces

| utl
| STL's core language concepts.
| utl::meta

## Typedefs

template<typename _T1 , typename _T2 , typename _Ret = _T1>
using | utl::meta::use_if_same_t = enable_if_t< same_< _T1, _T2 >::value, _Ret >
| If same type resolves to _Ret, else SFINAE. More...
template<typename _T1 , typename _T2 , typename _Ret = _T1>
using | utl::meta::use_if_not_same_t = enable_if_t< !same_< _T1, _T2 >::value, _Ret >
| If not same type resolves to _Ret, else SFINAE. More...
template<typename T1 , typename... Ts>
using | utl::meta::use_if_any_t = enable_if_t< or_< T1, Ts... >::value, T1 >
| If any type (_T1 or _T2) type resolves to _Ret, else to SFINAE. More...
template<typename T1 , typename... Ts>
using | utl::meta::use_if_all_t = enable_if_t< and_< T1, Ts... >::value, T1 >
| If both type (_T1 and _T2) type resolves to _Ret, else to SFINAE. More...

## Detailed Description

Template meta-programming SFINAE helpers.

Copyright (C) 2018 Christos Choutouridis

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this program. If not, see http://www.gnu.org/licenses/.

Definition in file useif.h.