Pothos  0.7.0-gf7fbae99
The Pothos dataflow programming software suite
Public Types | Static Public Member Functions | Static Public Attributes | List of all members
Pothos::serialization::hasSerialize< T, Archive > Struct Template Reference

#include <Invoke.hpp>

Public Types

using type = typename std::is_same< decltype(test< T >(nullptr)), void >::type
 

Static Public Member Functions

template<typename U >
static auto test (U *p) -> decltype(p->serialize(std::declval< Archive &>(), std::declval< const unsigned int >()))
 
template<typename U >
static auto test (...) -> std::false_type
 

Static Public Attributes

static const auto value = type::value
 

Detailed Description

template<typename T, typename Archive>
struct Pothos::serialization::hasSerialize< T, Archive >

Check for the presence of a serialize member function for class T. https://stackoverflow.com/questions/34595072/error-with-decltype-template-with-msvc2013

Member Typedef Documentation

◆ type

template<typename T , typename Archive >
using Pothos::serialization::hasSerialize< T, Archive >::type = typename std::is_same<decltype(test<T>(nullptr)), void>::type

Member Function Documentation

◆ test() [1/2]

template<typename T , typename Archive >
template<typename U >
static auto Pothos::serialization::hasSerialize< T, Archive >::test ( U *  p) -> decltype(p->serialize(std::declval< Archive &>(), std::declval< const unsigned int >()))
static

◆ test() [2/2]

template<typename T , typename Archive >
template<typename U >
static auto Pothos::serialization::hasSerialize< T, Archive >::test (   ...) -> std::false_type
static

Member Data Documentation

◆ value

template<typename T , typename Archive >
const auto Pothos::serialization::hasSerialize< T, Archive >::value = type::value
static

The documentation for this struct was generated from the following file: