commit | 5961bc9278a00e56dacdd9408d0744b5a0a3b493 | [log] [tgz] |
---|---|---|
author | ethannicholas <ethannicholas@google.com> | Wed Oct 12 06:39:56 2016 -0700 |
committer | Commit bot <commit-bot@chromium.org> | Wed Oct 12 06:39:56 2016 -0700 |
tree | d491a2df69b12eb937788951d726e72168572fdb | |
parent | 5772eaa91d6a10d74959d7732513c5ab9c057e03 [diff] [blame] |
Turned on SkSL->GLSL compiler GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2288033003 Committed: https://skia.googlesource.com/skia/+/9b0fe3d125f237d9884732a48414fa85fc71b4e3 Committed: https://skia.googlesource.com/skia/+/b12b3c6908c62c908b3680be01e3b5bfd30de310 Committed: https://skia.googlesource.com/skia/+/f008b0a59f45c0d4bea3e66faf3b01805009ec89 Committed: https://skia.googlesource.com/skia/+/08b2ccf398e2b81bc05d2c105837e5419899469b Committed: https://skia.googlesource.com/skia/+/dcfe6dba4a335e50e86ff68e3252065d4197432c Committed: https://skia.googlesource.com/skia/+/ccb1dd8f267f9d7fe7c9d0ce222ebc81b41853b3 Review-Url: https://codereview.chromium.org/2288033003
diff --git a/src/sksl/SkSLUtil.cpp b/src/sksl/SkSLUtil.cpp index 327bffe..51ad9fe 100644 --- a/src/sksl/SkSLUtil.cpp +++ b/src/sksl/SkSLUtil.cpp
@@ -9,7 +9,48 @@ namespace SkSL { +std::string to_string(double value) { + std::stringstream buffer; + buffer << std::setprecision(std::numeric_limits<double>::digits10) << value; + std::string result = buffer.str(); + if (result.find_last_of(".") == std::string::npos && + result.find_last_of("e") == std::string::npos) { + result += ".0"; + } + return result; +} + +std::string to_string(int32_t value) { + std::stringstream buffer; + buffer << value; + return buffer.str(); +} + +std::string to_string(uint32_t value) { + std::stringstream buffer; + buffer << value; + return buffer.str(); +} + +std::string to_string(int64_t value) { + std::stringstream buffer; + buffer << value; + return buffer.str(); +} + +std::string to_string(uint64_t value) { + std::stringstream buffer; + buffer << value; + return buffer.str(); +} + int stoi(std::string s) { + if (s.size() > 2 && s[0] == '0' && s[1] == 'x') { + char* p; + int result = strtoul(s.substr(2).c_str(), &p, 16); + ASSERT(*p == 0); + return result; + } return atoi(s.c_str()); } @@ -18,6 +59,12 @@ } long stol(std::string s) { + if (s.size() > 2 && s[0] == '0' && s[1] == 'x') { + char* p; + long result = strtoul(s.substr(2).c_str(), &p, 16); + ASSERT(*p == 0); + return result; + } return atol(s.c_str()); }