OLD | NEW |
1 // Copyright 2017 The Chromium Authors. All rights reserved. | 1 // Copyright 2017 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "core/css/properties/CSSPropertyAPIStrokeDasharray.h" | 5 #include "core/css/properties/CSSPropertyAPIStrokeDasharray.h" |
6 | 6 |
7 #include "core/css/CSSValueList.h" | 7 #include "core/css/CSSValueList.h" |
8 #include "core/css/parser/CSSPropertyParserHelpers.h" | 8 #include "core/css/parser/CSSPropertyParserHelpers.h" |
9 | 9 |
10 namespace blink { | 10 namespace blink { |
11 | 11 |
12 const CSSValue* CSSPropertyAPIStrokeDasharray::parseSingleValue( | 12 const CSSValue* CSSPropertyAPIStrokeDasharray::parseSingleValue( |
13 CSSParserTokenRange& range, | 13 CSSParserTokenRange& range, |
14 const CSSParserContext& context) { | 14 const CSSParserContext* context) { |
15 CSSValueID id = range.peek().id(); | 15 CSSValueID id = range.peek().id(); |
16 if (id == CSSValueNone) | 16 if (id == CSSValueNone) |
17 return CSSPropertyParserHelpers::consumeIdent(range); | 17 return CSSPropertyParserHelpers::consumeIdent(range); |
18 | 18 |
19 CSSValueList* dashes = CSSValueList::createCommaSeparated(); | 19 CSSValueList* dashes = CSSValueList::createCommaSeparated(); |
20 do { | 20 do { |
21 CSSPrimitiveValue* dash = CSSPropertyParserHelpers::consumeLengthOrPercent( | 21 CSSPrimitiveValue* dash = CSSPropertyParserHelpers::consumeLengthOrPercent( |
22 range, SVGAttributeMode, ValueRangeNonNegative); | 22 range, SVGAttributeMode, ValueRangeNonNegative); |
23 if (!dash || | 23 if (!dash || |
24 (CSSPropertyParserHelpers::consumeCommaIncludingWhitespace(range) && | 24 (CSSPropertyParserHelpers::consumeCommaIncludingWhitespace(range) && |
25 range.atEnd())) | 25 range.atEnd())) |
26 return nullptr; | 26 return nullptr; |
27 dashes->append(*dash); | 27 dashes->append(*dash); |
28 } while (!range.atEnd()); | 28 } while (!range.atEnd()); |
29 return dashes; | 29 return dashes; |
30 } | 30 } |
31 | 31 |
32 } // namespace blink | 32 } // namespace blink |
OLD | NEW |