LCOV - code coverage report
Current view: top level - usr/include/boost/date_time/gregorian - greg_year.hpp (source / functions) Hit Total Coverage
Test: ROSE Lines: 0 6 0.0 %
Date: 2022-12-08 13:48:47 Functions: 0 1 0.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : #ifndef GREG_YEAR_HPP___
       2             : #define GREG_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/compiler_config.hpp>
      13             : #include <boost/date_time/constrained_value.hpp>
      14             : #include <stdexcept>
      15             : #include <string>
      16             : 
      17             : namespace boost {
      18             : namespace gregorian {
      19             : 
      20             :   //! Exception type for gregorian year
      21           0 :   struct BOOST_SYMBOL_VISIBLE bad_year : public std::out_of_range
      22             :   {
      23           0 :     bad_year() : 
      24           0 :       std::out_of_range(std::string("Year is out of valid range: 1400..9999")) 
      25           0 :     {}
      26             :   };
      27             :   //! Policy class that declares error handling gregorian year type
      28             :   typedef CV::simple_exception_policy<unsigned short, 1400, 9999, bad_year> greg_year_policies;
      29             : 
      30             :   //! Generated representation for gregorian year
      31             :   typedef CV::constrained_value<greg_year_policies> greg_year_rep;
      32             : 
      33             :   //! Represent a year (range 1400 - 9999) 
      34             :   /*! This small class allows for simple conversion an integer value into
      35             :       a year for the gregorian calendar.  This currently only allows a
      36             :       range of 1400 to 9999.  Both ends of the range are a bit arbitrary
      37             :       at the moment, but they are the limits of current testing of the 
      38             :       library.  As such they may be increased in the future.
      39             :   */
      40             :   class BOOST_SYMBOL_VISIBLE greg_year : public greg_year_rep {
      41             :   public:
      42           0 :     greg_year(value_type year) : greg_year_rep(year) {}
      43           0 :     operator value_type()  const {return value_;}
      44             :   };
      45             : 
      46             : 
      47             : 
      48             : } } //namespace gregorian
      49             : 
      50             : 
      51             : 
      52             : #endif

Generated by: LCOV version 1.14