diff options
author | Mike Klein <mtklein@google.com> | 2017-06-27 22:52:03 +0000 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2017-06-27 22:52:10 +0000 |
commit | 5ce397205528f82084fc650c2ce27d246c01da33 (patch) | |
tree | 3e359ae172fed10fce8204163d6d372b0c3f6207 /src/sksl/SkSLStringStream.h | |
parent | 3fe44544c93759e7791ee0df3e5d172cb0f268b6 (diff) |
Revert "Re-land sksl fragment processor support"
This reverts commit c070939fd1a954b7a492bc30f0cf64a664b90181.
Reason for revert:
This has some knock-on effects in the generation of Android.bp from our GN files. See gn/gn_to_bp.py? We're seeing things like "tmp/tmpsBVycx/gen/" end up in the include search path in Android.bp, which obviously don't exist there...
Original change's description:
> Re-land sksl fragment processor support
>
> This reverts commit ed50200682e0de72c3abecaa4d5324ebcd1ed9f9.
>
> Bug: skia:
> Change-Id: I9caa7454b391450620d6989dc472abb3cf7a2cab
> Reviewed-on: https://skia-review.googlesource.com/20965
> Reviewed-by: Ben Wagner <benjaminwagner@google.com>
> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
TBR=benjaminwagner@google.com,ethannicholas@google.com
Change-Id: I502486b5405923b322429219f4cc396a45a14cea
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/20990
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Diffstat (limited to 'src/sksl/SkSLStringStream.h')
-rw-r--r-- | src/sksl/SkSLStringStream.h | 31 |
1 files changed, 22 insertions, 9 deletions
diff --git a/src/sksl/SkSLStringStream.h b/src/sksl/SkSLStringStream.h index a8690668d2..9061432018 100644 --- a/src/sksl/SkSLStringStream.h +++ b/src/sksl/SkSLStringStream.h @@ -28,8 +28,12 @@ public: fBuffer.append((const char*) s, size); } - const String& str() const { - return fBuffer; + const char* data() const { + return fBuffer.c_str(); + } + + size_t size() const { + return fBuffer.size(); } void reset() { @@ -50,33 +54,42 @@ namespace SkSL { class StringStream : public OutputStream { public: void write8(uint8_t b) override { + SkASSERT(!fData); fStream.write8(b); } void writeText(const char* s) override { + SkASSERT(!fData); fStream.writeText(s); } void write(const void* s, size_t size) override { + SkASSERT(!fData); fStream.write(s, size); } - const String& str() const { - if (!fString.size()) { - sk_sp<SkData> data = fStream.detachAsData(); - fString = String((const char*) data->data(), data->size()); + const char* data() const { + if (!fData) { + fData = fStream.detachAsData(); + } + return (const char*) fData->data(); + } + + size_t size() const { + if (!fData) { + fData = fStream.detachAsData(); } - return fString; + return fData->size(); } void reset() { fStream.reset(); - fString = ""; + fData = nullptr; } private: mutable SkDynamicMemoryWStream fStream; - mutable String fString; + mutable sk_sp<SkData> fData; }; #endif // SKSL_STANDALONE |