BVB Source Codes

mars Show greg_year.hpp Source code

Return Download mars: download greg_year.hpp Source code - Download mars Source code - Type:.hpp
  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/constrained_value.hpp"
  13. #include <stdexcept>
  14. #include <string>
  15.  
  16. namespace mars_boost {} namespace boost = mars_boost; namespace mars_boost {
  17. namespace gregorian {
  18.  
  19.   //! Exception type for gregorian year
  20.   struct bad_year : public std::out_of_range
  21.   {
  22.     bad_year() :
  23.       std::out_of_range(std::string("Year is out of valid range: 1400..10000"))
  24.     {}
  25.   };
  26.   //! Policy class that declares error handling gregorian year type
  27.   typedef CV::simple_exception_policy<unsigned short, 1400, 10000, bad_year> greg_year_policies;
  28.  
  29.   //! Generated representation for gregorian year
  30.   typedef CV::constrained_value<greg_year_policies> greg_year_rep;
  31.  
  32.   //! Represent a day of the month (range 1900 - 10000)
  33.   /*! This small class allows for simple conversion an integer value into
  34.       a year for the gregorian calendar.  This currently only allows a
  35.       range of 1900 to 10000.  Both ends of the range are a bit arbitrary
  36.       at the moment, but they are the limits of current testing of the
  37.       library.  As such they may be increased in the future.
  38.   */
  39.   class greg_year : public greg_year_rep {
  40.   public:
  41.     greg_year(unsigned short year) : greg_year_rep(year) {}
  42.     operator unsigned short()  const {return value_;}
  43.   private:
  44.    
  45.   };
  46.  
  47.  
  48.  
  49. } } //namespace gregorian
  50.  
  51.  
  52.  
  53. #endif
  54.  
downloadgreg_year.hpp Source code - Download mars Source code
Related Source Codes/Software:
Hero - Elegant transition library for iOS & tvOS 2017-06-09
deep-photo-styletransfer - Code and data for paper "Deep Photo Style Transfer... 2017-06-09
mastodon - A GNU Social-compatible microblogging server ... 2017-06-09
plyr - A simple HTML5, YouTube and Vimeo player ... 2017-06-08
prepack - Prepack is a partial evaluator for JavaScript. Pre... 2017-06-08
Public-APIs - 2017-06-09
lottie-ios - An iOS library to natively render After Effects ve... 2017-06-09
Awesome-Hacking - A collection of various awesome lists for hackers,... 2017-06-09
algorithms - Minimal examples of data structures and algorithms... 2017-06-10
lectures - Oxford Deep NLP 2017 course 2017-06-10
CRYENGINE - CRYENGINE is a powerful real-time game development... 2017-06-11
postal - 2017-06-11
reactide - Reactide is the first dedicated IDE for React web ... 2017-06-11
rkt - rkt is a pod-native container engine for Linux. It... 2017-06-11
uWebSockets - Tiny WebSockets https://for... 2017-06-11
realworld - TodoMVC for the RealWorld - Exemplary fullstack Me... 2017-06-11
goreplay - GoReplay is an open-source tool for capturing and ... 2017-06-10
pyenv - Simple Python version management 2017-06-10
redux-saga - An alternative side effect model for Redux apps ... 2017-06-10
angular-starter - 2017-06-10

 Back to top