19 return strcmp(
a.c_str(),
b.c_str()) < 0;
25 if (strings.
empty()) {
29 int idx = SkTSearch<SkString, extension_compare>(&strings.
front(),
42 fStrings = that.fStrings;
43 fInitialized = that.fInitialized;
62 size_t length = strcspn(in,
" ");
98 if (!getStringi || !getIntegerv) {
104 for (
int i = 0;
i < extensionCnt; ++
i) {
120 if (!fStrings.
empty()) {
142 if (idx != fStrings.
size()) {
158#ifdef SK_ENABLE_DUMP_GPU
163 for (
int i = 0;
i < fStrings.
size(); ++
i) {
#define GR_GL_NUM_EXTENSIONS
#define GR_EGL_EXTENSIONS
static int find_string(const TArray< SkString > &strings, const char ext[])
static void eat_space_sep_strings(TArray< SkString > *out, const char in[])
#define GR_IS_GR_WEBGL(standard)
#define GR_IS_GR_GL(standard)
#define GR_IS_GR_GL_ES(standard)
GrGLVersion GrGLGetVersionFromString(const char *versionString)
#define GR_GL_INVALID_VER
#define GR_GL_VER(major, minor)
void SkTInsertionSort(T *left, int count, const C &lessThan)
void SkTQSort(T *begin, T *end, const C &lessThan)
bool has(const char[]) const
bool init(GrGLStandard standard, GrGLFunction< GrGLGetStringFn > getString, GrGLFunction< GrGLGetStringiFn > getStringi, GrGLFunction< GrGLGetIntegervFn > getIntegerv, GrGLFunction< GrEGLQueryStringFn > queryString=nullptr, GrEGLDisplay eglDisplay=nullptr)
GrGLExtensions & operator=(const GrGLExtensions &)
void dumpJSON(SkJSONWriter *) const
bool remove(const char[])
void beginArray(const char *name=nullptr, bool multiline=true)
void appendString(const char *value, size_t size)
void removeShuffle(int n)
T & emplace_back(Args &&... args)