Lines Matching refs:end

46 static bool genericParseNumber(const CharType*& ptr, const CharType* end, FloatType& number, WhitespaceMode mode)
60 skipOptionalSVGSpaces(ptr, end);
63 if (ptr < end && *ptr == '+')
65 else if (ptr < end && *ptr == '-') {
70 if (ptr == end || ((*ptr < '0' || *ptr > '9') && *ptr != '.'))
76 while (ptr < end && *ptr >= '0' && *ptr <= '9')
91 if (ptr < end && *ptr == '.') { // read the decimals
95 if (ptr >= end || *ptr < '0' || *ptr > '9')
98 while (ptr < end && *ptr >= '0' && *ptr <= '9')
103 if (ptr != start && ptr + 1 < end && (*ptr == 'e' || *ptr == 'E')
116 if (ptr >= end || *ptr < '0' || *ptr > '9')
119 while (ptr < end && *ptr >= '0' && *ptr <= '9') {
143 skipOptionalSVGSpacesOrDelimiter(ptr, end);
148 bool parseNumber(const LChar*& ptr, const LChar* end, float& number, WhitespaceMode mode)
150 return genericParseNumber(ptr, end, number, mode);
153 bool parseNumber(const UChar*& ptr, const UChar* end, float& number, WhitespaceMode mode)
155 return genericParseNumber(ptr, end, number, mode);
161 bool genericParseArcFlag(const CharType*& ptr, const CharType* end, bool& flag)
163 if (ptr >= end)
173 skipOptionalSVGSpacesOrDelimiter(ptr, end);
178 bool parseArcFlag(const LChar*& ptr, const LChar* end, bool& flag)
180 return genericParseArcFlag(ptr, end, flag);
183 bool parseArcFlag(const UChar*& ptr, const UChar* end, bool& flag)
185 return genericParseArcFlag(ptr, end, flag);
189 static bool genericParseNumberOptionalNumber(const CharType*& ptr, const CharType* end, float& x, float& y)
191 if (!parseNumber(ptr, end, x))
194 if (ptr == end)
196 else if (!parseNumber(ptr, end, y, AllowLeadingAndTrailingWhitespace))
199 return ptr == end;
209 const LChar* end = ptr + string.length();
210 return genericParseNumberOptionalNumber(ptr, end, x, y);
213 const UChar* end = ptr + string.length();
214 return genericParseNumberOptionalNumber(ptr, end, x, y);
218 bool genericParseNumberOrPercentage(const CharType*& ptr, const CharType* end, float& number)
220 if (genericParseNumber(ptr, end, number, AllowLeadingWhitespace)) {
221 if (ptr == end)
228 skipOptionalSVGSpaces(ptr, end);
233 return ptr == end;
246 const LChar* end = ptr + string.length();
247 return genericParseNumberOrPercentage(ptr, end, number);
250 const UChar* end = ptr + string.length();
251 return genericParseNumberOrPercentage(ptr, end, number);
256 static bool parseGlyphName(const CharType*& ptr, const CharType* end, HashSet<String>& values)
258 skipOptionalSVGSpaces(ptr, end);
260 while (ptr < end) {
263 while (ptr < end && *ptr != ',')
275 skipOptionalSVGSpacesOrDelimiter(ptr, end, ',');
289 const LChar* end = ptr + input.length();
290 return parseGlyphName(ptr, end, values);
293 const UChar* end = ptr + input.length();
294 return parseGlyphName(ptr, end, values);
308 const CharType* end = characters + length;
309 while (ptr < end) {
328 while (ptr < end) {
348 while (ptr < end) {
368 static bool genericParseKerningUnicodeString(const CharType*& ptr, const CharType* end, UnicodeRanges& rangeList, HashSet<String>& stringList)
370 while (ptr < end) {
372 while (ptr < end && *ptr != ',')
397 const LChar* end = ptr + input.length();
398 return genericParseKerningUnicodeString(ptr, end, rangeList, stringList);
401 const UChar* end = ptr + input.length();
402 return genericParseKerningUnicodeString(ptr, end, rangeList, stringList);
406 static Vector<String> genericParseDelimitedString(const CharType*& ptr, const CharType* end, const char seperator)
410 skipOptionalSVGSpaces(ptr, end);
412 while (ptr < end) {
415 while (ptr < end && *ptr != seperator) // careful not to ignore whitespace inside inputs
427 skipOptionalSVGSpacesOrDelimiter(ptr, end, seperator);
439 const LChar* end = ptr + input.length();
440 return genericParseDelimitedString(ptr, end, seperator);
443 const UChar* end = ptr + input.length();
444 return genericParseDelimitedString(ptr, end, seperator);
449 bool parseFloatPoint(const CharType*& current, const CharType* end, FloatPoint& point)
453 if (!parseNumber(current, end, x)
454 || !parseNumber(current, end, y))
460 template bool parseFloatPoint(const LChar*& current, const LChar* end, FloatPoint& point1);
461 template bool parseFloatPoint(const UChar*& current, const UChar* end, FloatPoint& point1);
464 inline bool parseFloatPoint2(const CharType*& current, const CharType* end, FloatPoint& point1, FloatPoint& point2)
470 if (!parseNumber(current, end, x1)
471 || !parseNumber(current, end, y1)
472 || !parseNumber(current, end, x2)
473 || !parseNumber(current, end, y2))
480 template bool parseFloatPoint2(const LChar*& current, const LChar* end, FloatPoint& point1, FloatPoint& point2);
481 template bool parseFloatPoint2(const UChar*& current, const UChar* end, FloatPoint& point1, FloatPoint& point2);
484 bool parseFloatPoint3(const CharType*& current, const CharType* end, FloatPoint& point1, FloatPoint& point2, FloatPoint& point3)
492 if (!parseNumber(current, end, x1)
493 || !parseNumber(current, end, y1)
494 || !parseNumber(current, end, x2)
495 || !parseNumber(current, end, y2)
496 || !parseNumber(current, end, x3)
497 || !parseNumber(current, end, y3))
505 template bool parseFloatPoint3(const LChar*& current, const LChar* end, FloatPoint& point1, FloatPoint& point2, FloatPoint& point3);
506 template bool parseFloatPoint3(const UChar*& current, const UChar* end, FloatPoint& point1, FloatPoint& point2, FloatPoint& point3);
516 bool parseAndSkipTransformType(const CharType*& ptr, const CharType* end, SVGTransformType& type)
518 if (ptr >= end)
522 if (skipString(ptr, end, skewXDesc, WTF_ARRAY_LENGTH(skewXDesc)))
524 else if (skipString(ptr, end, skewYDesc, WTF_ARRAY_LENGTH(skewYDesc)))
526 else if (skipString(ptr, end, scaleDesc, WTF_ARRAY_LENGTH(scaleDesc)))
530 } else if (skipString(ptr, end, translateDesc, WTF_ARRAY_LENGTH(translateDesc)))
532 else if (skipString(ptr, end, rotateDesc, WTF_ARRAY_LENGTH(rotateDesc)))
534 else if (skipString(ptr, end, matrixDesc, WTF_ARRAY_LENGTH(matrixDesc)))
542 template bool parseAndSkipTransformType(const UChar*& current, const UChar* end, SVGTransformType&);
543 template bool parseAndSkipTransformType(const LChar*& current, const LChar* end, SVGTransformType&);
552 const LChar* end = ptr + string.length();
553 parseAndSkipTransformType(ptr, end, type);
556 const UChar* end = ptr + string.length();
557 parseAndSkipTransformType(ptr, end, type);