13 #include <boost/algorithm/string/case_conv.hpp> 23 std::string
hexint(
unsigned short v )
26 os <<
"0x" << std::hex << v;
33 os <<
"0x" << std::hex << v;
39 os <<
"0x" << std::hex << v;
46 os <<
"0x" << std::hex << v;
49 std::string
hexint(
unsigned long v )
52 os <<
"0x" << std::hex << v;
56 std::string
hexint(
size_t v )
59 os <<
"0x" << std::hex << v;
64 std::string
decint(
unsigned short v )
91 std::string
decint(
unsigned long v )
99 std::string
decint(
size_t v )
107 void splitnamevalue(
const std::string& istr, std::string& propname, std::string& propvalue )
109 std::string::size_type start = istr.find_first_not_of(
" \t\r\n" );
110 if ( start != std::string::npos )
112 std::string::size_type delimpos = istr.find_first_of(
" \t\r\n=", start + 1 );
113 if ( delimpos != std::string::npos )
115 std::string::size_type valuestart = istr.find_first_not_of(
" \t\r\n", delimpos + 1 );
116 std::string::size_type valueend = istr.find_last_not_of(
" \t\r\n" );
117 propname = istr.substr( start, delimpos - start );
118 if ( valuestart != std::string::npos && valueend != std::string::npos )
120 propvalue = istr.substr( valuestart, valueend - valuestart + 1 );
129 propname = istr.substr( start, std::string::npos );
141 const std::string& exp_pv )
145 if ( pn != exp_pn || pv != exp_pv )
147 INFO_PRINT <<
"splitnamevalue( \"" << istr <<
"\" ) fails!\n";
171 const char* s = tmp.c_str();
172 str.reserve( tmp.size() );
208 const char* s = tmp.c_str();
209 str.reserve( tmp.size() + 2 );
237 std::string tmp = in;
241 void test_dqs(
const std::string& in,
const std::string& out )
243 std::string tmp = in;
247 INFO_PRINT <<
"decodequotedstring( " << in <<
" ) fails!\n";
252 INFO_PRINT <<
"encodequotedstring( " << out <<
" ) fails!\n";
268 boost::to_lower( str );
273 boost::to_upper( str );
278 return boost::to_lower_copy( str );
283 return boost::to_upper_copy( str );
UnitTest test_convertquotedstring_obj(test_convertquotedstring)
void splitnamevalue(const std::string &istr, std::string &propname, std::string &propvalue)
void mkupper(std::string &str)
void encodequotedstring(std::string &str)
std::string decint(unsigned short v)
#define OSTRINGSTREAM_STR(x)
std::string hexint(unsigned short v)
std::string getencodedquotedstring(const std::string &in)
void decodequotedstring(std::string &str)
void test_dqs(const std::string &in, const std::string &out)
void test_splitnamevalue(const std::string &istr, const std::string &exp_pn, const std::string &exp_pv)
std::string strlower(const std::string &str)
void mklower(std::string &str)
UnitTest test_splitnamevalue_obj(test_splitnamevalue)
std::string strupper(const std::string &str)
void test_convertquotedstring()