## Struct deserializer

zeep::xml::deserializer — deserializer is the class that initiates the deserialization process.

## Synopsis

    // In header: <zeep/xml/serialize.hpp>

    struct deserializer {
      // construct/copy/destruct
      deserializer(const element &);

      // public member functions
      template<typename T> deserializer & operator&(const name_value_pair< T > &);
      template<typename T> deserializer & operator&(const element_nvp< T > &);
      template<typename T> deserializer & operator&(const attribute_nvp< T > &);
      template<typename T> deserializer & deserialize_element(T &);
      template<typename T> deserializer & deserialize_element(const char *, T &);
      template<typename T> deserializer & deserialize_attribute(const char *, T &);

      // public data members
      const element & m_node;
    };

## Description

### `deserializer` public construct/copy/destruct

1.     deserializer(const element & node);

### `deserializer` public member functions

1.     template<typename T>
         deserializer & operator&(const name_value_pair< T > & rhs);

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

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

4.     template<typename T> deserializer & deserialize_element(T & data);

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

6.     template<typename T>
         deserializer & deserialize_attribute(const char * name, T & data);