cereal
A C++11 library for serialization
Public Types | Public Member Functions | List of all members
cereal::traits::detail::NoConvertConstRef< Source > Struct Template Reference

A struct that prevents implicit conversion. More...

#include </home/shane/workspace/cereal/include/cereal/details/traits.hpp>

Inheritance diagram for cereal::traits::detail::NoConvertConstRef< Source >:
cereal::traits::detail::NoConvertBase

Public Types

using type = Source
 Used to get underlying type easily.
 

Public Member Functions

template<class Dest , class = typename std::enable_if<std::is_same<Source, Dest>::value>::type>
 operator Dest ()=delete
 
template<class Dest , class = typename std::enable_if<std::is_same<Source, Dest>::value>::type>
 operator Dest const & ()
 only allow conversion if the types are the same and we are converting into a const reference
 

Detailed Description

template<class Source>
struct cereal::traits::detail::NoConvertConstRef< Source >

A struct that prevents implicit conversion.

Any type instantiated with this struct will be unable to implicitly convert to another type. Is designed to only allow conversion to Source const &.

Template Parameters
Sourcethe type of the original source

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