46b2ed80ae
Another nuke! This time, trying to do a client <-> server thing. Also a bit of messing with Lua.
37 lines
638 B
C++
37 lines
638 B
C++
#pragma once
|
|
|
|
/* https://stackoverflow.com/a/217605 */
|
|
|
|
#include <algorithm>
|
|
#include <functional>
|
|
#include <cctype>
|
|
#include <locale>
|
|
|
|
// trim from start
|
|
static inline
|
|
std::string&
|
|
ltrim (std::string& s)
|
|
{
|
|
s.erase (s.begin (), std::find_if (s.begin (), s.end (), std::not1 (std::ptr_fun<int, int>(std::isspace))));
|
|
return s;
|
|
}
|
|
|
|
|
|
// trim from end
|
|
static inline
|
|
std::string&
|
|
rtrim (std::string& s)
|
|
{
|
|
s.erase (std::find_if (s.rbegin (), s.rend (), std::not1 (std::ptr_fun <int, int>(std::isspace))).base (), s.end ());
|
|
return s;
|
|
}
|
|
|
|
|
|
// trim from both ends
|
|
static inline
|
|
std::string&
|
|
trim (std::string& s)
|
|
{
|
|
return ltrim (rtrim (s));
|
|
}
|