aboutsummaryrefslogtreecommitdiff
path: root/examples/cxx/tree/custom/calendar/xml-schema-custom.hxx
blob: 2bab0b52f93a2cec17bc7fe10da9bf7ba10d8461 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
// file      : examples/cxx/tree/custom/calendar/xml-schema-custom.hxx
// author    : Boris Kolpackov <boris@codesynthesis.com>
// copyright : not copyrighted - public domain

// Do not include this file directly, use xml-schema.hxx instead. This
// file is included into generated xml-schema.hxx so we do not need to
// guard against multiple inclusions.
//

#include <boost/date_time/gregorian/gregorian.hpp> // boost::gregorian::date

namespace xml_schema
{
  class date: public simple_type,
              public boost::gregorian::date
  {
  public:
    // Parsing c-tors: element, attribute, and list item.
    //
    date (const xercesc::DOMElement&, flags = 0, container* = 0);
    date (const xercesc::DOMAttr&, flags = 0, container* = 0);
    date (const std::string&,
          const xercesc::DOMElement*,
          flags = 0,
          container* = 0);

    // Copy c-tor and _clone.
    //
    date (const date&, flags = 0, container* = 0);

    virtual date*
    _clone (flags = 0, container* = 0) const;
  };
}