annotate DEPENDENCIES/generic/include/boost/date_time/date_format_simple.hpp @ 133:4acb5d8d80b6 tip

Don't fail environmental check if README.md exists (but .txt and no-suffix don't)
author Chris Cannam
date Tue, 30 Jul 2019 12:25:44 +0100
parents c530137014c0
children
rev   line source
Chris@16 1 #ifndef DATE_TIME_SIMPLE_FORMAT_HPP___
Chris@16 2 #define DATE_TIME_SIMPLE_FORMAT_HPP___
Chris@16 3
Chris@16 4 /* Copyright (c) 2002,2003 CrystalClear Software, Inc.
Chris@16 5 * Use, modification and distribution is subject to the
Chris@16 6 * Boost Software License, Version 1.0. (See accompanying
Chris@16 7 * file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
Chris@16 8 * Author: Jeff Garland, Bart Garst
Chris@101 9 * $Date$
Chris@16 10 */
Chris@16 11
Chris@16 12 #include "boost/date_time/parse_format_base.hpp"
Chris@16 13
Chris@16 14 namespace boost {
Chris@16 15 namespace date_time {
Chris@16 16
Chris@16 17 //! Class to provide simple basic formatting rules
Chris@16 18 template<class charT>
Chris@16 19 class simple_format {
Chris@16 20 public:
Chris@16 21
Chris@16 22 //! String used printed is date is invalid
Chris@16 23 static const charT* not_a_date()
Chris@16 24 {
Chris@16 25 return "not-a-date-time";
Chris@16 26 }
Chris@16 27 //! String used to for positive infinity value
Chris@16 28 static const charT* pos_infinity()
Chris@16 29 {
Chris@16 30 return "+infinity";
Chris@16 31 }
Chris@16 32 //! String used to for positive infinity value
Chris@16 33 static const charT* neg_infinity()
Chris@16 34 {
Chris@16 35 return "-infinity";
Chris@16 36 }
Chris@16 37 //! Describe month format
Chris@16 38 static month_format_spec month_format()
Chris@16 39 {
Chris@16 40 return month_as_short_string;
Chris@16 41 }
Chris@16 42 static ymd_order_spec date_order()
Chris@16 43 {
Chris@16 44 return ymd_order_iso; //YYYY-MM-DD
Chris@16 45 }
Chris@16 46 //! This format uses '-' to separate date elements
Chris@16 47 static bool has_date_sep_chars()
Chris@16 48 {
Chris@16 49 return true;
Chris@16 50 }
Chris@16 51 //! Char to sep?
Chris@16 52 static charT year_sep_char()
Chris@16 53 {
Chris@16 54 return '-';
Chris@16 55 }
Chris@16 56 //! char between year-month
Chris@16 57 static charT month_sep_char()
Chris@16 58 {
Chris@16 59 return '-';
Chris@16 60 }
Chris@16 61 //! Char to separate month-day
Chris@16 62 static charT day_sep_char()
Chris@16 63 {
Chris@16 64 return '-';
Chris@16 65 }
Chris@16 66 //! char between date-hours
Chris@16 67 static charT hour_sep_char()
Chris@16 68 {
Chris@16 69 return ' ';
Chris@16 70 }
Chris@16 71 //! char between hour and minute
Chris@16 72 static charT minute_sep_char()
Chris@16 73 {
Chris@16 74 return ':';
Chris@16 75 }
Chris@16 76 //! char for second
Chris@16 77 static charT second_sep_char()
Chris@16 78 {
Chris@16 79 return ':';
Chris@16 80 }
Chris@16 81
Chris@16 82 };
Chris@16 83
Chris@16 84 #ifndef BOOST_NO_STD_WSTRING
Chris@16 85
Chris@16 86 //! Specialization of formmating rules for wchar_t
Chris@16 87 template<>
Chris@16 88 class simple_format<wchar_t> {
Chris@16 89 public:
Chris@16 90
Chris@16 91 //! String used printed is date is invalid
Chris@16 92 static const wchar_t* not_a_date()
Chris@16 93 {
Chris@16 94 return L"not-a-date-time";
Chris@16 95 }
Chris@16 96 //! String used to for positive infinity value
Chris@16 97 static const wchar_t* pos_infinity()
Chris@16 98 {
Chris@16 99 return L"+infinity";
Chris@16 100 }
Chris@16 101 //! String used to for positive infinity value
Chris@16 102 static const wchar_t* neg_infinity()
Chris@16 103 {
Chris@16 104 return L"-infinity";
Chris@16 105 }
Chris@16 106 //! Describe month format
Chris@16 107 static month_format_spec month_format()
Chris@16 108 {
Chris@16 109 return month_as_short_string;
Chris@16 110 }
Chris@16 111 static ymd_order_spec date_order()
Chris@16 112 {
Chris@16 113 return ymd_order_iso; //YYYY-MM-DD
Chris@16 114 }
Chris@16 115 //! This format uses '-' to separate date elements
Chris@16 116 static bool has_date_sep_chars()
Chris@16 117 {
Chris@16 118 return true;
Chris@16 119 }
Chris@16 120 //! Char to sep?
Chris@16 121 static wchar_t year_sep_char()
Chris@16 122 {
Chris@16 123 return '-';
Chris@16 124 }
Chris@16 125 //! char between year-month
Chris@16 126 static wchar_t month_sep_char()
Chris@16 127 {
Chris@16 128 return '-';
Chris@16 129 }
Chris@16 130 //! Char to separate month-day
Chris@16 131 static wchar_t day_sep_char()
Chris@16 132 {
Chris@16 133 return '-';
Chris@16 134 }
Chris@16 135 //! char between date-hours
Chris@16 136 static wchar_t hour_sep_char()
Chris@16 137 {
Chris@16 138 return ' ';
Chris@16 139 }
Chris@16 140 //! char between hour and minute
Chris@16 141 static wchar_t minute_sep_char()
Chris@16 142 {
Chris@16 143 return ':';
Chris@16 144 }
Chris@16 145 //! char for second
Chris@16 146 static wchar_t second_sep_char()
Chris@16 147 {
Chris@16 148 return ':';
Chris@16 149 }
Chris@16 150
Chris@16 151 };
Chris@16 152
Chris@16 153 #endif // BOOST_NO_STD_WSTRING
Chris@16 154 } } //namespace date_time
Chris@16 155
Chris@16 156
Chris@16 157
Chris@16 158
Chris@16 159 #endif