Boost C++ Libraries of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

This is the documentation for an old version of boost. Click here for the latest Boost documentation.

Class template date_names_put

boost::date_time::date_names_put — Output facet base class for gregorian dates.


template<typename Config, typename charT = char, 
typename OutputIterator = std::ostreambuf_iterator<charT> > 
class date_names_put {
// types
typedef OutputIterator iter_type;
typedef Config::month_type month_type;
typedef Config::month_enum month_enum;
typedef Config::weekday_enum weekday_enum;
typedef Config::special_value_enum special_value_enum;
typedef std::basic_string< charT > string_type;
typedef charT char_type;

// construct/copy/destruct

// public member functions
std::locale::id & __get_id(void) const;
void put_special_value(iter_type &, special_value_enum) const;
void put_month_short(iter_type &, month_enum) const;
void put_month_long(iter_type &, month_enum) const;
void put_weekday_short(iter_type &, weekday_enum) const;
void put_weekday_long(iter_type &, weekday_enum) const;
bool has_date_sep_chars() const;
void year_sep_char(iter_type &) const;
void month_sep_char(iter_type &) const;
void day_sep_char(iter_type &) const;
ymd_order_spec date_order() const;
month_format_spec month_format() const;

// protected member functions
virtual void do_put_month_short(iter_type &, month_enum) const;
virtual void do_put_month_long(iter_type &, month_enum) const;
virtual void do_put_special_value(iter_type &, special_value_enum) const;
virtual void do_put_weekday_short(iter_type &, weekday_enum) const;
virtual void do_put_weekday_long(iter_type &, weekday_enum) const;
virtual bool do_has_date_sep_chars() const;
virtual void do_year_sep_char(iter_type &) const;
virtual void do_month_sep_char(iter_type &) const;
virtual void do_day_sep_char(iter_type &) const;
virtual ymd_order_spec do_date_order() const;
virtual month_format_spec do_month_format() const;
void put_string(iter_type &, const charT *const) const;
void put_string(iter_type &, const string_type &) const;

static const char_type default_special_value_names;
static const char_type separator;
static std::locale::id id;


This class is a base class for date facets used to localize the names of months and the names of days in the week.

Requirements of Config

  • define an enumeration month_enum that enumerates the months. The enumeration should be '1' based eg: Jan==1

  • define as_short_string and as_long_string

(see langer & kreft p334).

date_names_put construct/copy/destruct

  1. date_names_put();

date_names_put public member functions

  1. std::locale::id & __get_id(void ) const;
  2. void put_special_value(iter_type & oitr, special_value_enum sv) const;
  3. void put_month_short(iter_type & oitr, month_enum moy) const;
  4. void put_month_long(iter_type & oitr, month_enum moy) const;
  5. void put_weekday_short(iter_type & oitr, weekday_enum wd) const;
  6. void put_weekday_long(iter_type & oitr, weekday_enum wd) const;
  7. bool has_date_sep_chars() const;
  8. void year_sep_char(iter_type & oitr) const;
  9. void month_sep_char(iter_type & oitr) const;
  10. void day_sep_char(iter_type & oitr) const;
  11. ymd_order_spec date_order() const;
  12. month_format_spec month_format() const;

date_names_put protected member functions

  1. virtual void do_put_month_short(iter_type & oitr, month_enum moy) const;
  2. virtual void do_put_month_long(iter_type & oitr, month_enum moy) const;
  3. virtual void 
    do_put_special_value(iter_type & oitr, special_value_enum sv) const;
  4. virtual void do_put_weekday_short(iter_type & , weekday_enum ) const;
  5. virtual void do_put_weekday_long(iter_type & , weekday_enum ) const;
  6. virtual bool do_has_date_sep_chars() const;
  7. virtual void do_year_sep_char(iter_type & oitr) const;
  8. virtual void do_month_sep_char(iter_type & oitr) const;
  9. virtual void do_day_sep_char(iter_type & oitr) const;
  10. virtual ymd_order_spec do_date_order() const;
  11. virtual month_format_spec do_month_format() const;
  12. void put_string(iter_type & oi, const charT *const s) const;
  13. void put_string(iter_type & oi, const string_type & s1) const;
Copyright 2001-2005 CrystalClear Software, Inc