Line data Source code
1 : #ifndef GREG_DAY_OF_YEAR_HPP___ 2 : #define GREG_DAY_OF_YEAR_HPP___ 3 : 4 : /* Copyright (c) 2002,2003 CrystalClear Software, Inc. 5 : * Use, modification and distribution is subject to the 6 : * Boost Software License, Version 1.0. (See accompanying 7 : * file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt) 8 : * Author: Jeff Garland 9 : * $Date$ 10 : */ 11 : 12 : #include <boost/date_time/constrained_value.hpp> 13 : #include <boost/date_time/compiler_config.hpp> 14 : #include <stdexcept> 15 : #include <string> 16 : 17 : namespace boost { 18 : namespace gregorian { 19 : 20 : //! Exception type for day of year (1..366) 21 0 : struct BOOST_SYMBOL_VISIBLE bad_day_of_year : public std::out_of_range 22 : { 23 0 : bad_day_of_year() : 24 0 : std::out_of_range(std::string("Day of year value is out of range 1..366")) 25 0 : {} 26 : }; 27 : 28 : //! A day of the year range (1..366) 29 : typedef CV::simple_exception_policy<unsigned short,1,366,bad_day_of_year> greg_day_of_year_policies; 30 : 31 : //! Define a range representation type for the day of the year 1..366 32 : typedef CV::constrained_value<greg_day_of_year_policies> greg_day_of_year_rep; 33 : 34 : 35 : } } //namespace gregorian 36 : 37 : 38 : 39 : #endif