Lines Matching refs:str

49 static const char* skip_ws(const char str[])
51 SkASSERT(str);
52 while (is_ws(*str))
53 str++;
54 return str;
57 static const char* skip_sep(const char str[])
59 SkASSERT(str);
60 while (is_sep(*str))
61 str++;
62 return str;
65 int SkParse::Count(const char str[])
73 if ((c = *str++) == '\0')
78 if ((c = *str++) == '\0')
86 int SkParse::Count(const char str[], char separator)
94 if ((c = *str++) == '\0')
99 if ((c = *str++) == '\0')
107 const char* SkParse::FindHex(const char str[], uint32_t* value)
109 SkASSERT(str);
110 str = skip_ws(str);
112 if (!is_hex(*str))
119 while ((digit = to_hex(*str)) >= 0)
124 str += 1;
127 if (*str == 0 || is_ws(*str))
131 return str;
136 const char* SkParse::FindS32(const char str[], int32_t* value)
138 SkASSERT(str);
139 str = skip_ws(str);
142 if (*str == '-')
145 str += 1;
148 if (!is_digit(*str))
152 while (is_digit(*str))
154 n = 10*n + *str - '0';
155 str += 1;
159 return str;
162 const char* SkParse::FindMSec(const char str[], SkMSec* value)
164 SkASSERT(str);
165 str = skip_ws(str);
168 if (*str == '-')
171 str += 1;
174 if (!is_digit(*str))
178 while (is_digit(*str))
180 n = 10*n + *str - '0';
181 str += 1;
184 if (*str == '.') {
185 str++;
186 while (is_digit(*str))
188 n = 10*n + *str - '0';
189 str += 1;
198 return str;
201 const char* SkParse::FindScalar(const char str[], SkScalar* value) {
202 SkASSERT(str);
203 str = skip_ws(str);
206 float v = (float)strtod(str, &stop);
207 if (str == stop) {
216 if (*str == '-')
219 str += 1;
222 if (!is_digit(*str) && *str != '.')
226 while (is_digit(*str))
228 n = 10*n + *str - '0';
231 str += 1;
235 if (*str == '.')
239 str += 1;
243 while (is_digit(*str) && fraction < end)
244 d += (*str++ - '0') * *fraction++;
248 while (is_digit(*str))
249 str += 1;
256 return str;
259 const char* SkParse::FindScalars(const char str[], SkScalar value[], int count)
267 str = SkParse::FindScalar(str, value);
268 if (--count == 0 || str == NULL)
272 str = skip_sep(str);
277 return str;
280 static bool lookup_str(const char str[], const char** table, int count)
283 if (!strcmp(str, table[count]))
288 bool SkParse::FindBool(const char str[], bool* value)
293 if (lookup_str(str, gYes, SK_ARRAY_COUNT(gYes)))
298 else if (lookup_str(str, gNo, SK_ARRAY_COUNT(gNo)))