libiqxmlrpc  0.12.12
value_type_xml.h
1 // Libiqxmlrpc - an object-oriented XML-RPC solution.
2 // Copyright (C) 2011 Anton Dedov
3 
4 #include <string>
5 #include "value_type_visitor.h"
6 
7 namespace iqxmlrpc {
8 
9 class XmlBuilder;
10 
13 public:
14  Value_type_to_xml(XmlBuilder& builder, bool server_mode = false):
15  builder_(builder),
16  server_mode_(server_mode) {}
17 
18 private:
19  virtual void do_visit_value(const Value_type&);
20  virtual void do_visit_nil();
21  virtual void do_visit_int(int);
22  virtual void do_visit_double(double);
23  virtual void do_visit_bool(bool);
24  virtual void do_visit_string(const std::string&);
25  virtual void do_visit_struct(const Struct&);
26  virtual void do_visit_array(const Array&);
27  virtual void do_visit_base64(const Binary_data&);
28  virtual void do_visit_datetime(const Date_time&);
29 
30  void add_textnode(const char* name, const std::string& data);
31 
32  XmlBuilder& builder_;
33  bool server_mode_;
34 };
35 
36 } // namespace iqxmlrpc
XML-RPC array type. Operates with objects of type Value, not Value_type.
Definition: value_type.h:82
Value_type visitor that converts values into XML-RPC representation.
Definition: value_type_xml.h:12
XML-RPC dateTime.iso8601 type.
Definition: value_type.h:306
XML-RPC array type. Operates with objects of type Value, not Value_type.
Definition: value_type.h:203
The Value_type's visitor base class.
Definition: value_type_visitor.h:17
XML-RPC library.
Definition: auth_plugin.cc:6
Base type for XML-RPC types.
Definition: value_type.h:37
XML-RPC Base64 type.
Definition: value_type.h:259
Definition: xml_builder.h:15