27 #ifndef LBANN_UTILS_FROM_STRING_INCLUDED 28 #define LBANN_UTILS_FROM_STRING_INCLUDED 53 inline std::string
from_string(std::string&& str) {
return std::move(str); }
56 inline std::string from_string<std::string>(std::string
const& str)
64 return std::stoi(str);
70 return std::stol(str);
76 return std::stoll(str);
82 return std::stoul(str);
86 inline unsigned long long 89 return std::stoull(str);
95 return std::stof(str);
101 return std::stod(str);
107 return std::stold(str);
113 auto upcase = [](std::string s) {
114 std::transform(s.begin(), s.end(), s.begin(), [](
unsigned char c) {
115 return std::toupper(c);
119 auto upper = upcase(str);
122 else if (upper ==
"FALSE")
130 #endif // LBANN_UTILS_FROM_STRING_INCLUDED long from_string< long >(std::string const &str)
double from_string< double >(std::string const &str)
long double from_string< long double >(std::string const &str)
T from_string(std::string const &str)
An exceedingly simple implementation of boost::lexical_cast, e.g.
bool from_string< bool >(std::string const &str)
int from_string< int >(std::string const &str)
unsigned long long from_string< unsigned long long >(std::string const &str)
long long from_string< long long >(std::string const &str)
float from_string< float >(std::string const &str)
unsigned long from_string< unsigned long >(std::string const &str)