26 #ifndef _UCOMMON_NUMBERS_H_
27 #define _UCOMMON_NUMBERS_H_
29 #ifndef _UCOMMON_CONFIG_H_
58 Number(
char *buffer,
unsigned size);
70 inline const char *
c_str()
const
90 inline operator long()
const
97 inline operator char*()
const
105 long operator=(
long value);
112 long operator=(
const Number& number);
119 long operator+=(
const long value);
126 long operator-=(
const long value);
140 inline bool operator==(
const long value)
const
141 {
return get() == value;}
143 inline bool operator!=(
const long value)
const
144 {
return get() != value;}
146 inline bool operator<(
const long value)
const
147 {
return get() < value;}
149 inline bool operator>(
const long value)
const
150 {
return get() > value;}
152 inline bool operator<=(
const long value)
const
153 {
return get() <= value;}
155 inline bool operator>=(
const long value)
const
156 {
return get() >= value;}
180 void set(
long value);
187 long operator=(
long value);
206 inline const T
abs(
const T& value)
221 inline const T (
min)(
const T& v1,
const T& v2)
223 return ((v1 < v2) ? v1 : v2);
233 inline const T (
max)(
const T& v1,
const T& v2)
235 return ((v1 > v2) ? v1 : v2);
long operator()() const
Get value of string buffer as expression of object.
Number number_t
A convenience type for number.
A number manipulation class.
Common namespace for all ucommon objects.
const char * c_str() const
Get string buffer representing the number.
Generic smart pointer class.
ZNumber znumber_t
A convenience type for znumber.
T &() min(T &o1, T &o2)
Convenience function to return min of two objects.
T &() max(T &o1, T &o2)
Convenience function to return max of two objects.
const T abs(const T &value)
Template for absolute value of a type.
A number manipulation class that maintains a zero lead filled string.
Various miscellaneous platform specific headers and defines.