From 5d72f7deb1807c4ee1c1d0901124d5ea07e556f2 Mon Sep 17 00:00:00 2001 From: Herb Derby Date: Tue, 24 Jan 2017 11:44:52 -0500 Subject: Remove SkTDict and calls from SkView. R=reed@google.com Change-Id: Iebfddf752a2ac210a3f5c69de8decd06d0c35617 Reviewed-on: https://skia-review.googlesource.com/7436 Commit-Queue: Herb Derby Commit-Queue: Mike Reed Reviewed-by: Mike Reed --- include/private/SkTDict.h | 146 ---------------------------------------------- 1 file changed, 146 deletions(-) delete mode 100644 include/private/SkTDict.h (limited to 'include/private') diff --git a/include/private/SkTDict.h b/include/private/SkTDict.h deleted file mode 100644 index cd76e72999..0000000000 --- a/include/private/SkTDict.h +++ /dev/null @@ -1,146 +0,0 @@ -/* - * Copyright 2006 The Android Open Source Project - * - * Use of this source code is governed by a BSD-style license that can be - * found in the LICENSE file. - */ - -#ifndef SkTDict_DEFINED -#define SkTDict_DEFINED - -#include "SkArenaAlloc.h" -#include "SkTSearch.h" -#include "SkTDArray.h" - -template class SkTDict : SkNoncopyable { -public: - SkTDict(size_t minStringAlloc) : fStrings(minStringAlloc) {} - - void reset() { - fArray.reset(); - fStrings.reset(); - } - - int count() const { return fArray.count(); } - - bool set(const char name[], const T& value) { - return set(name, strlen(name), value); - } - - bool set(const char name[], size_t len, const T& value) { - SkASSERT(name); - - int index = this->find_index(name, len); - - if (index >= 0) { - fArray[index].fValue = value; - return false; - } else { - Pair* pair = fArray.insert(~index); - char* copy = fStrings.makeArrayDefault(len + 1); - memcpy(copy, name, len); - copy[len] = '\0'; - pair->fName = copy; - pair->fValue = value; - return true; - } - } - - bool find(const char name[]) const { - return this->find_index(name) >= 0; - } - - bool find(const char name[], size_t len) const { - return this->find_index(name, len) >= 0; - } - - bool find(const char name[], T* value) const { - return find(name, strlen(name), value); - } - - bool find(const char name[], size_t len, T* value) const { - int index = this->find_index(name, len); - - if (index >= 0) { - if (value) { - *value = fArray[index].fValue; - } - return true; - } - return false; - } - - bool findKey(T& value, const char** name) const { - const Pair* end = fArray.end(); - for (const Pair* pair = fArray.begin(); pair < end; pair++) { - if (pair->fValue != value) { - continue; - } - *name = pair->fName; - return true; - } - return false; - } - -public: - struct Pair { - const char* fName; - T fValue; - - friend int operator<(const Pair& a, const Pair& b) { - return strcmp(a.fName, b.fName); - } - - friend int operator!=(const Pair& a, const Pair& b) { - return strcmp(a.fName, b.fName); - } - }; - friend class Iter; - -public: - class Iter { - public: - Iter(const SkTDict& dict) { - fIter = dict.fArray.begin(); - fStop = dict.fArray.end(); - } - - const char* next(T* value) { - const char* name = NULL; - if (fIter < fStop) { - name = fIter->fName; - if (value) { - *value = fIter->fValue; - } - fIter += 1; - } - return name; - } - private: - const Pair* fIter; - const Pair* fStop; - }; - -private: - SkTDArray fArray; - SkArenaAlloc fStrings; - - int find_index(const char name[]) const { - return find_index(name, strlen(name)); - } - - int find_index(const char name[], size_t len) const { - SkASSERT(name); - - int count = fArray.count(); - int index = ~0; - - if (count) { - index = SkStrSearch(&fArray.begin()->fName, count, name, len, sizeof(Pair)); - } - return index; - } - friend class Iter; -}; - -#endif -- cgit v1.2.3