| Index: include/core/SkTArray.h
|
| diff --git a/include/core/SkTArray.h b/include/core/SkTArray.h
|
| index dea0e38fecae7e2ac10e0f0b7b517c2847e06364..e11698a44a2944f6fbf211eea272981bf2e0f8e9 100644
|
| --- a/include/core/SkTArray.h
|
| +++ b/include/core/SkTArray.h
|
| @@ -364,6 +364,30 @@ public:
|
| return !(*this == right);
|
| }
|
|
|
| + int find(const T& elem) const {
|
| + const T* iter = fItemArray;
|
| + const T* stop = fItemArray + fCount;
|
| +
|
| + for (; iter < stop; iter++) {
|
| + if (*iter == elem) {
|
| + return SkToInt(iter - fItemArray);
|
| + }
|
| + }
|
| + return -1;
|
| + }
|
| +
|
| + int rfind(const T& elem) const {
|
| + const T* iter = fItemArray + fCount;
|
| + const T* stop = fItemArray;
|
| +
|
| + while (iter > stop) {
|
| + if (*--iter == elem) {
|
| + return SkToInt(iter - stop);
|
| + }
|
| + }
|
| + return -1;
|
| + }
|
| +
|
| protected:
|
| /**
|
| * Creates an empty array that will use the passed storage block until it
|
|
|