28 #if !defined(MYSQLPP_TINY_INT_H)
29 #define MYSQLPP_TINY_INT_H
54 template <
typename VT =
signed char>
83 return static_cast<int>(value_);
159 value_ <<= static_cast<value_type>(v);
204 return value_ - i.value_;
210 return value_ + i.value_;
216 return value_ * i.value_;
222 return value_ / i.value_;
228 return value_ % i.value_;
234 return value_ | i.value_;
240 return value_ & i.value_;
246 return value_ ^ i.value_;
252 return value_ << i.value_;
258 return value_ >> i.value_;
264 return value_ == i.value_;
270 return value_ != i.value_;
276 return value_ < i.value_;
282 return value_ > i.value_;
288 return value_ <= i.value_;
294 return value_ >= i.value_;
302 template <
typename VT>
305 os << static_cast<int>(i);
Class for holding an SQL TINYINT value.
Definition: tiny_int.h:56
bool operator>=(const this_type &i) const
Check this object is greater than or equal to another.
Definition: tiny_int.h:292
this_type operator+(const this_type &i) const
Return this value plus i.
Definition: tiny_int.h:208
this_type operator/(const this_type &i) const
Return this value divided by i.
Definition: tiny_int.h:220
bool operator>(const this_type &i) const
Check that this object is greater than another.
Definition: tiny_int.h:280
this_type & operator>>=(int v)
Shift this value right by v positions.
Definition: tiny_int.h:164
this_type & operator/=(int v)
Divide this value by another object.
Definition: tiny_int.h:121
this_type & operator&=(int v)
Bitwise AND this value by another value.
Definition: tiny_int.h:136
this_type & operator<<=(int v)
Shift this value left by v positions.
Definition: tiny_int.h:157
tiny_int()
Default constructor.
Definition: tiny_int.h:65
bool operator<(const this_type &i) const
Check that this object is less than another.
Definition: tiny_int.h:274
this_type & operator+=(int v)
Add another value to this object.
Definition: tiny_int.h:100
VT value_type
alias for type of internal value
Definition: tiny_int.h:60
tiny_int(value_type v)
Create object from any integral type that can be converted to a short int.
Definition: tiny_int.h:69
this_type operator|(const this_type &i) const
Return this value bitwise OR'd by i.
Definition: tiny_int.h:232
bool operator<=(const this_type &i) const
Check this object is less than or equal to another.
Definition: tiny_int.h:286
this_type operator-(const this_type &i) const
Return this value minus i.
Definition: tiny_int.h:202
this_type operator*(const this_type &i) const
Return this value multiplied by i.
Definition: tiny_int.h:214
this_type & operator--()
Subtract one from this value and return that value.
Definition: tiny_int.h:178
this_type & operator|=(int v)
Bitwise OR this value by another value.
Definition: tiny_int.h:143
bool operator==(const this_type &i) const
Check for equality.
Definition: tiny_int.h:262
tiny_int< VT > this_type
alias for this object's type
Definition: tiny_int.h:59
bool operator!=(const this_type &i) const
Check for inequality.
Definition: tiny_int.h:268
this_type & operator*=(int v)
Multiply this value by another object.
Definition: tiny_int.h:114
this_type operator>>(const this_type &i) const
Return this value bitwise shifted right by i.
Definition: tiny_int.h:256
this_type & operator%=(int v)
Divide this value by another object and store the remainder.
Definition: tiny_int.h:129
this_type & operator++()
Add one to this value and return that value.
Definition: tiny_int.h:171
this_type operator&(const this_type &i) const
Return this value bitwise AND'd by i.
Definition: tiny_int.h:238
this_type operator<<(const this_type &i) const
Return this value bitwise shifted left by i.
Definition: tiny_int.h:250
this_type & operator=(int v)
Assign a new value to the object.
Definition: tiny_int.h:93
this_type operator^(const this_type &i) const
Return this value bitwise XOR'd by i.
Definition: tiny_int.h:244
this_type & operator-=(int v)
Subtract another value to this object.
Definition: tiny_int.h:107
this_type operator%(const this_type &i) const
Return the modulus of this value divided by i.
Definition: tiny_int.h:226
this_type & operator^=(int v)
Bitwise XOR this value by another value.
Definition: tiny_int.h:150
This file includes top-level definitions for use both internal to the library, and outside it....