blob: 59c58bbb7e1ef3c6e5e813ded634514bcde2b534 [file] [log] [blame]
Howard Hinnant3e519522010-05-11 19:42:16 +00001#ifndef REP_H
2#define REP_H
3
4class Rep
5{
6 int data_;
7public:
Howard Hinnantc0331152012-07-13 19:17:27 +00008 _LIBCPP_CONSTEXPR Rep() : data_(-1) {}
9 explicit _LIBCPP_CONSTEXPR Rep(int i) : data_(i) {}
Howard Hinnant3e519522010-05-11 19:42:16 +000010
Howard Hinnantc0331152012-07-13 19:17:27 +000011 bool _LIBCPP_CONSTEXPR operator==(int i) const {return data_ == i;}
12 bool _LIBCPP_CONSTEXPR operator==(const Rep& r) const {return data_ == r.data_;}
Howard Hinnant3e519522010-05-11 19:42:16 +000013
14 Rep& operator*=(Rep x) {data_ *= x.data_; return *this;}
15 Rep& operator/=(Rep x) {data_ /= x.data_; return *this;}
16};
17
Howard Hinnant94b2dd02010-08-22 00:59:46 +000018#endif // REP_H