## Struct serializer

zeep::xml::serializer — serializer is the class that initiates the serialization process.

## Synopsis

    // In header: </build/libzeep-8SPbhu/libzeep-3.0.5/zeep/xml/serialize.hpp>

    struct serializer {
      // construct/copy/destruct
      serializer(container *);

      // public member functions
      template<typename T>
        serializer & operator&(const boost::serialization::nvp< T > &);
      template<typename T> serializer & operator&(const element_nvp< T > &);
      template<typename T> serializer & operator&(const attribute_nvp< T > &);
      template<typename T> serializer & serialize_element(const char *, const T &);
      template<typename T>
        serializer & serialize_attribute(const char *, const T &);

      // public data members
      container * m_node;
    };

## Description

serializer, deserializer and schema_creator are classes that can be used to initiate the serialization. They are the Archive classes that are the first parameter to the templated function 'serialize' in the classes that can be serialized. (See boost::serialization for more info).

### `serializer` public construct/copy/destruct

1.     serializer(container * node);

### `serializer` public member functions

1.     template<typename T>
         serializer & operator&(const boost::serialization::nvp< T > & rhs);

2.     template<typename T> serializer & operator&(const element_nvp< T > & rhs);

3.     template<typename T> serializer & operator&(const attribute_nvp< T > & rhs);

4.     template<typename T>
         serializer & serialize_element(const char * name, const T & data);

5.     template<typename T>
         serializer & serialize_attribute(const char * name, const T & data);