Ejemplo n.º 1
0
 inline
 typename date_type::duration_type days_until_weekday(const date_type& d, const weekday_type& wd)
 {
   typedef typename date_type::duration_type duration_type;
   duration_type wks(0);
   duration_type dd(wd.as_number() - d.day_of_week().as_number());
   if(dd.is_negative()){
     wks = duration_type(7);
   }
   return dd + wks;
 }
Ejemplo n.º 2
0
 inline
 typename date_type::duration_type days_before_weekday(const date_type& d, const weekday_type& wd)
 {
   typedef typename date_type::duration_type duration_type;
   duration_type wks(0);
   duration_type dd(wd.as_number() - d.day_of_week().as_number());
   if(dd.days() > 0){
     wks = duration_type(7);
   }
   // we want a number of days, not an offset. The value returned must
   // be zero or larger.
   return (-dd + wks);
 }