return out.str();
}
-WEEK::WEEK(const std::string& daystring)
+void WEEK::set(const std::string& daystring)
{
int len=daystring.length();
for (int p=0; p < len; p++)
int wnr=-1;
if (!(c >> wnr) || wnr<0 || wnr >6)
throw range_error("illegal weekday >"+string(nr)+"< in "+daystring);
-
+
days.set(wnr);
}
}
enum WEEKDAY { SU=0, MO=1, TU=2, WE=3, TH=4, FR=5, SA=6 };
// throws out_of_range if illegal week
- WEEK(const std::string& daystring);
+ WEEK(const std::string& daystring)
+ { set(daystring); }
WEEK(const std::bitset<7> &_days)
: days(_days)
operator std::bitset<7>() const
{ return days; }
+ void set(const std::string& daystring);
void set(WEEKDAY d, bool value=true)
{ days[d]=value; }