diff options
Diffstat (limited to 'src/sksl/SkSLStringStream.h')
-rw-r--r-- | src/sksl/SkSLStringStream.h | 90 |
1 files changed, 0 insertions, 90 deletions
diff --git a/src/sksl/SkSLStringStream.h b/src/sksl/SkSLStringStream.h deleted file mode 100644 index 9962955ce1..0000000000 --- a/src/sksl/SkSLStringStream.h +++ /dev/null @@ -1,90 +0,0 @@ -/* - * Copyright 2017 Google Inc. - * - * Use of this source code is governed by a BSD-style license that can be - * found in the LICENSE file. - */ - -#ifndef SKSL_STRINGSTREAM -#define SKSL_STRINGSTREAM - -#include "SkSLOutputStream.h" - -#ifdef SKSL_STANDALONE - -namespace SkSL { - -class StringStream : public OutputStream { -public: - void write8(uint8_t b) override { - fBuffer += (char) b; - } - - void writeText(const char* s) override { - fBuffer += s; - } - - void write(const void* s, size_t size) override { - fBuffer.append((const char*) s, size); - } - - const char* data() const { - return fBuffer.c_str(); - } - - size_t size() const { - return fBuffer.size(); - } - -private: - String fBuffer; -}; - -#else - -#include "SkData.h" -#include "SkStream.h" - -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 char* data() const { - if (!fData) { - fData = fStream.detachAsData(); - } - return (const char*) fData->data(); - } - - size_t size() const { - if (!fData) { - fData = fStream.detachAsData(); - } - return fData->size(); - } - -private: - mutable SkDynamicMemoryWStream fStream; - mutable sk_sp<SkData> fData; -}; - -#endif // SKSL_STANDALONE - -} // namespace - -#endif |