Alexandria 2.31.0
SDC-CH common library for the Euclid project
Loading...
Searching...
No Matches
Static Public Member Functions | List of all members
boost::serialization::Load< N > Struct Template Reference

#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)
 

Detailed Description

template<size_t N>
struct boost::serialization::Load< N >

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.

Definition at line 81 of file tuple.h.

Member Function Documentation

◆ load() [1/2]

template<size_t N>
template<typename Archive , typename... Args>
static void boost::serialization::Load< N >::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 
)
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().

Here is the call graph for this function:

◆ load() [2/2]

template<size_t N>
template<typename Archive , typename... Args>
static void boost::serialization::Load< N >::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 
)
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().

Here is the call graph for this function:

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