Alexandria 2.31.0
SDC-CH common library for the Euclid project
|
#include <tuple.h>
Static Public Member Functions | |
template<typename Archive , typename... Args> | |
static void | load (Archive &ar, std::tuple< Args... > &t, const unsigned int version, typename std::enable_if< std::is_default_constructible< typename std::tuple_element< N - 1, std::tuple< Args... > >::type >::value >::type *=0) |
template<typename Archive , typename... Args> | |
static void | load (Archive &ar, std::tuple< Args... > &t, const unsigned int version, typename std::enable_if<!std::is_default_constructible< typename std::tuple_element< N - 1, std::tuple< Args... > >::type >::value >::type *=0) |
Class which loads from a boost serialization archive the elements of a tuple in a recursive way. It uses two different ways to load the elements, depending if their type has default constructor or not. Note that non default constructible elements must have a copy assignment operator.
|
inlinestatic |
Version of load for default constructible tuple elements. It just loads from the archive the element into the default constructed element of the tuple.
Definition at line 87 of file tuple.h.
References boost::serialization::Load< N >::load().
Referenced by boost::serialization::Load< N >::load(), and boost::serialization::Load< N >::load().
|
inlinestatic |
Version of load for non default constructible tuple elements. It reads from the archive a pointer to enable the boost non default constructor mechanisms and then it uses the copy assignment operator to move the just red object in the tuple.
Definition at line 99 of file tuple.h.
References boost::serialization::Load< N >::load().