13 #ifndef __STOUT_NUMIFY_HPP__
14 #define __STOUT_NUMIFY_HPP__
19 #include <boost/lexical_cast.hpp>
32 return boost::lexical_cast<T>(s);
33 }
catch (
const boost::bad_lexical_cast&) {
51 ss << std::hex << s.substr(1);
58 #pragma warning(disable:4146)
62 #pragma warning(default:4146)
69 if (!ss.fail() && ss.eof()) {
75 return Error(
"Failed to convert '" + s +
"' to number");
83 return numify<T>(std::string(s));
102 #endif // __STOUT_NUMIFY_HPP__
Definition: errorbase.hpp:35
Definition: result.hpp:40
bool isSome() const
Definition: option.hpp:115
Try< T > numify(const std::string &s)
Definition: numify.hpp:29
bool contains(const std::string &s, const std::string &substr)
Definition: strings.hpp:406
bool isSome() const
Definition: try.hpp:70
const T & get() const &
Definition: option.hpp:118
static Try error(const E &e)
Definition: try.hpp:42
bool isError() const
Definition: try.hpp:71
bool startsWith(const std::string &s, const std::string &prefix)
Definition: strings.hpp:380
const T & get() const
Definition: try.hpp:73