diff --git a/confparser/space.cpp b/confparser/space.cpp index 1c8ea76..22a0e5f 100755 --- a/confparser/space.cpp +++ b/confparser/space.cpp @@ -343,6 +343,37 @@ return def; } + +void Space::Add(const wchar_t * name, bool value) +{ + if( value ) + Add(name, L"true"); + else + Add(name, L"false"); +} + + +void Space::Add(const std::wstring & name, bool value) +{ + Add(name.c_str(), value); +} + + +void Space::Add(const wchar_t * name, int value) +{ +wchar_t value_str[50]; + + swprintf(value_str, sizeof(value_str)/sizeof(wchar_t), L"%d", value); + Add(name, value_str); +} + + +void Space::Add(const std::wstring & name, int value) +{ + Add(name.c_str(), value); +} + + void Space::Add(const wchar_t * name, long value) { wchar_t value_str[50]; @@ -354,10 +385,7 @@ wchar_t value_str[50]; void Space::Add(const std::wstring & name, long value) { -wchar_t value_str[50]; - - swprintf(value_str, sizeof(value_str)/sizeof(wchar_t), L"%ld", value); - Add(name.c_str(), value_str); + Add(name.c_str(), value); } diff --git a/confparser/space.h b/confparser/space.h index 16903e5..4117910 100755 --- a/confparser/space.h +++ b/confparser/space.h @@ -212,6 +212,12 @@ public: bool Bool(const wchar_t * name, bool def); bool Bool(const std::wstring & name, bool def); + void Add(const wchar_t * name, bool value); + void Add(const std::wstring & name, bool value); + + void Add(const wchar_t * name, int value); + void Add(const std::wstring & name, int value); + void Add(const wchar_t * name, long value); void Add(const std::wstring & name, long value);