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   struct BOOST_SYMBOL_VISIBLE bad_day_of_year : public std::out_of_range
22   {
bad_day_of_yearboost::gregorian::bad_day_of_year23     bad_day_of_year() :
24       std::out_of_range(std::string("Day of year value is out of range 1..366"))
25     {}
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
40