CppWAMP
C++11 client library for the WAMP protocol
traits.hpp File Reference

Contains general-purpose type traits. More...

#include <tuple>
#include <type_traits>
#include <vector>
#include "api.hpp"

Go to the source code of this file.

Namespaces

 wamp
 

Typedefs

template<bool B, typename T = int>
using wamp::EnableIf = typename std::enable_if< B, T >::type
 Metafunction used to enable overloads based on a boolean condition.
 
template<bool B, typename T = int>
using wamp::DisableIf = typename std::enable_if<!B, T >::type
 Metafunction used to disable overloads based on a boolean condition.
 
template<typename T >
using wamp::ValueTypeOf = typename std::remove_cv< typename std::remove_reference< T >::type >::type
 Metafunction used to obtain the plain value type of a parameter passed by universal reference.
 
template<int N, typename... Ts>
using wamp::NthTypeOf = typename std::tuple_element< N, std::tuple< Ts... > >::type
 Metafunction that obtains the Nth type of a parameter pack.
 
template<bool B>
using wamp::BoolConstant = std::integral_constant< bool, B >
 Equivalent to std::bool_constant provided in C++17.
 
using wamp::TrueType = BoolConstant< true >
 Equivalent to std::true_type provided in C++17.
 
using wamp::FalseType = BoolConstant< false >
 Equivalent to std::false_type provided in C++17.
 

Functions

template<typename T , typename U >
constexpr bool wamp::isSameType ()
 Determines if a type is the same as another.
 
template<typename T >
constexpr bool wamp::isBool ()
 Determines if the given type is considered a boolean.
 
template<typename T >
constexpr bool wamp::isNumber ()
 Determines if the given type is considered a number. More...
 
template<typename T >
constexpr bool wamp::isSignedInteger ()
 Determines if the given type is a signed integer.
 
template<typename T >
constexpr bool wamp::isUnsignedInteger ()
 Determines if the given type is an unsigned integer.
 

Detailed Description

Contains general-purpose type traits.