Classdesc 3.44
pack_stl.h File Reference

serialisation for standard containers More...

#include "pack_base.h"
#include <iterator>
#include <string>
#include <vector>
#include <utility>
Include dependency graph for pack_stl.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  Value_Type< C >
struct  Value_Type< std::map< K, V, C, A > >
struct  Value_Type< std::multimap< K, V, C, A > >
class  Iterator< T >
class  Iterator< const T >
struct  access_pack< classdesc::Iterator< T > >
struct  access_unpack< classdesc::Iterator< T > >
struct  access_pack< std::basic_string< cT, t, A > >
struct  access_unpack< std::basic_string< cT, t, A > >
struct  access_pack< std::pair< A, B > >
struct  access_unpack< std::pair< A, B > >

Namespaces

namespace  classdesc
 Contains definitions related to classdesc functionality.
namespace  classdesc_access
 Contains access_* structs, and nothing else. These structs are used to gain access to private members.

Typedefs

typedef unsigned long long uint64

Functions

template<class T>
enable_if< is_container< T >, void >::T pack (classdesc::pack_t &b, const classdesc::string &, const T &a)
template<class T>
void unpackSequence (classdesc::pack_t &b, const classdesc::string &d, T &a)
template<class T>
enable_if< is_sequence< T >, void >::T unpack (classdesc::pack_t &b, const classdesc::string &d, T &a)
template<class T>
enable_if< is_sequence< T >, void >::T unpack (classdesc::pack_t &b, const classdesc::string &, const T &a)
template<class T>
enable_if< is_associative_container< T >, void >::T unpack (classdesc::pack_t &b, const classdesc::string &, T &a)
template<class T>
enable_if< is_associative_container< T >, void >::T unpack (classdesc::pack_t &b, const classdesc::string &, const T &a)
template<class C>
classdesc::enable_if< classdesc::is_container< C > >::T pack (classdesc::pack_t &b, const classdesc::string &d, typename C::iterator &a)
template<class C>
classdesc::enable_if< classdesc::is_container< C > >::T unpack (classdesc::pack_t &b, const classdesc::string &d, typename C::iterator &a)
template<class T>
void pack (pack_t &targ, const string &desc, is_treenode dum, const T *const &arg)
 serialise a tree (or DAG)
template<class T>
void unpack (unpack_t &targ, const string &desc, is_treenode dum, T *&arg)
 unserialise a tree.

Detailed Description

serialisation for standard containers

Function Documentation

◆ unpack()

template<class T>
void unpack ( unpack_t & targ,
const string & desc,
is_treenode dum,
T *& arg )
inline

unserialise a tree.

Serialised DAGs will be converted to a tree