X-Git-Url: http://git.tdb.fi/?p=libs%2Fcore.git;a=blobdiff_plain;f=source%2Fstrings%2Ffmt.h;h=3c1db9d3e3c37c14f76ad6a7cba166925f00a26f;hp=84690d174388ce288eb78243d9973b1f2662d1e0;hb=99b9121e2158603372c7313400283b622e6754d8;hpb=d16185720fa344263367dbd50c61bfc8183d99a4 diff --git a/source/strings/fmt.h b/source/strings/fmt.h index 84690d1..3c1db9d 100644 --- a/source/strings/fmt.h +++ b/source/strings/fmt.h @@ -11,7 +11,7 @@ class format_error: public std::logic_error { public: format_error(const std::string &w): std::logic_error(w) { } - virtual ~format_error() throw() { } + virtual ~format_error() throw() = default; }; @@ -68,22 +68,22 @@ public: }; private: - unsigned wd; - unsigned prec; - bool spos; - wchar_t fillc; - Base base; - bool sbase; - FloatMode fmode; - bool spoint; - Align align; - bool ucase; - Type type; + unsigned wd = 0; + unsigned prec = 6; + bool spos = false; + wchar_t fillc = ' '; + Base base = DEC; + bool sbase = false; + FloatMode fmode = AUTOFLT; + bool spoint = false; + Align align = RIGHT; + bool ucase = false; + Type type = STR; public: - Fmt() { reset(); } - Fmt(const char *f) { reset(); parse(f); } - Fmt(const std::string &f) { reset(); parse(f.c_str()); } + Fmt() = default; + Fmt(const char *f) { parse(f); } + Fmt(const std::string &f) { parse(f.c_str()); } private: void parse(const char *); @@ -91,19 +91,20 @@ private: public: Fmt &width(unsigned w) { wd = w; return *this; } Fmt &precision(unsigned p) { prec = p; return *this; } - Fmt &showpos(bool s=true) { spos = s; return *this; } + Fmt &showpos(bool s = true) { spos = s; return *this; } Fmt &fill(wchar_t f) { fillc = f; return *this; } Fmt &fixed() { fmode = FIXED; return *this; } Fmt &scientific() { fmode = SCI; return *this; } - Fmt &showpoint(bool s=true) { spoint = s; return *this; } - Fmt &showbase(bool s=true) { sbase = s; return *this; } + Fmt &showpoint(bool s = true) { spoint = s; return *this; } + Fmt &showbase(bool s = true) { sbase = s; return *this; } Fmt &left() { align = LEFT; return *this; } Fmt &right() { align = RIGHT; return *this; } Fmt &dec() { base = DEC; return *this; } Fmt &hex() { base = HEX; return *this; } Fmt &oct() { base = OCT; return *this; } Fmt &bin() { base = BIN; return *this; } - Fmt &uppercase(bool u=true) { ucase = u; return *this; } + Fmt &autobase() { base = AUTOBASE; return *this; } + Fmt &uppercase(bool u = true) { ucase = u; return *this; } Fmt &numeric() { type = NUM; return *this; } Fmt &character() { type = CHAR; return *this; } Fmt &string() { type = STR; return *this; }