Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(445)

Side by Side Diff: third_party/WebKit/Source/core/css/parser/CSSPropertyParser.h

Issue 1858753003: Remove RawPtr from core/css (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2003 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 2003 Lars Knoll (knoll@kde.org)
3 * Copyright (C) 2004, 2005, 2006, 2008, 2009, 2010 Apple Inc. All rights reserv ed. 3 * Copyright (C) 2004, 2005, 2006, 2008, 2009, 2010 Apple Inc. All rights reserv ed.
4 * Copyright (C) 2008 Eric Seidel <eric@webkit.org> 4 * Copyright (C) 2008 Eric Seidel <eric@webkit.org>
5 * Copyright (C) 2009 - 2010 Torch Mobile (Beijing) Co. Ltd. All rights reserve d. 5 * Copyright (C) 2009 - 2010 Torch Mobile (Beijing) Co. Ltd. All rights reserve d.
6 * 6 *
7 * This library is free software; you can redistribute it and/or 7 * This library is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Library General Public 8 * modify it under the terms of the GNU Library General Public
9 * License as published by the Free Software Foundation; either 9 * License as published by the Free Software Foundation; either
10 * version 2 of the License, or (at your option) any later version. 10 * version 2 of the License, or (at your option) any later version.
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
67 FResolution = 0x0200, 67 FResolution = 0x0200,
68 FNonNeg = 0x0400, 68 FNonNeg = 0x0400,
69 FUnitlessQuirk = 0x0800 69 FUnitlessQuirk = 0x0800
70 }; 70 };
71 71
72 static bool parseValue(CSSPropertyID, bool important, 72 static bool parseValue(CSSPropertyID, bool important,
73 const CSSParserTokenRange&, const CSSParserContext&, 73 const CSSParserTokenRange&, const CSSParserContext&,
74 HeapVector<CSSProperty, 256>&, StyleRule::RuleType); 74 HeapVector<CSSProperty, 256>&, StyleRule::RuleType);
75 75
76 // Parses a non-shorthand CSS property 76 // Parses a non-shorthand CSS property
77 static RawPtr<CSSValue> parseSingleValue(CSSPropertyID, const CSSParserToken Range&, const CSSParserContext&); 77 static CSSValue* parseSingleValue(CSSPropertyID, const CSSParserTokenRange&, const CSSParserContext&);
78 78
79 // TODO(timloh): This doesn't seem like the right place for these 79 // TODO(timloh): This doesn't seem like the right place for these
80 static bool isSystemColor(CSSValueID); 80 static bool isSystemColor(CSSValueID);
81 static bool isColorKeyword(CSSValueID); 81 static bool isColorKeyword(CSSValueID);
82 static bool isValidNumericValue(double); 82 static bool isValidNumericValue(double);
83 83
84 private: 84 private:
85 CSSPropertyParser(const CSSParserTokenRange&, const CSSParserContext&, 85 CSSPropertyParser(const CSSParserTokenRange&, const CSSParserContext&,
86 HeapVector<CSSProperty, 256>*); 86 HeapVector<CSSProperty, 256>*);
87 87
88 // TODO(timloh): Rename once the CSSParserValue-based parseValue is removed 88 // TODO(timloh): Rename once the CSSParserValue-based parseValue is removed
89 bool parseValueStart(CSSPropertyID unresolvedProperty, bool important); 89 bool parseValueStart(CSSPropertyID unresolvedProperty, bool important);
90 bool consumeCSSWideKeyword(CSSPropertyID unresolvedProperty, bool important) ; 90 bool consumeCSSWideKeyword(CSSPropertyID unresolvedProperty, bool important) ;
91 RawPtr<CSSValue> parseSingleValue(CSSPropertyID); 91 CSSValue* parseSingleValue(CSSPropertyID);
92 92
93 RawPtr<CSSValue> legacyParseValue(CSSPropertyID); 93 CSSValue* legacyParseValue(CSSPropertyID);
94 bool legacyParseAndApplyValue(CSSPropertyID, bool important); 94 bool legacyParseAndApplyValue(CSSPropertyID, bool important);
95 bool legacyParseShorthand(CSSPropertyID, bool important); 95 bool legacyParseShorthand(CSSPropertyID, bool important);
96 96
97 bool inShorthand() const { return m_inParseShorthand; } 97 bool inShorthand() const { return m_inParseShorthand; }
98 bool inQuirksMode() const { return isQuirksModeBehavior(m_context.mode()); } 98 bool inQuirksMode() const { return isQuirksModeBehavior(m_context.mode()); }
99 99
100 bool parseViewportDescriptor(CSSPropertyID propId, bool important); 100 bool parseViewportDescriptor(CSSPropertyID propId, bool important);
101 bool parseFontFaceDescriptor(CSSPropertyID); 101 bool parseFontFaceDescriptor(CSSPropertyID);
102 102
103 void addProperty(CSSPropertyID, RawPtr<CSSValue>, bool important, bool impli cit = false); 103 void addProperty(CSSPropertyID, CSSValue*, bool important, bool implicit = f alse);
104 void addExpandedPropertyForValue(CSSPropertyID propId, RawPtr<CSSValue>, boo l); 104 void addExpandedPropertyForValue(CSSPropertyID propId, CSSValue*, bool);
105 105
106 bool consumeBorder(bool important); 106 bool consumeBorder(bool important);
107 107
108 bool parseShorthand(CSSPropertyID, bool important); 108 bool parseShorthand(CSSPropertyID, bool important);
109 bool consumeShorthandGreedily(const StylePropertyShorthand&, bool important) ; 109 bool consumeShorthandGreedily(const StylePropertyShorthand&, bool important) ;
110 bool consume4Values(const StylePropertyShorthand&, bool important); 110 bool consume4Values(const StylePropertyShorthand&, bool important);
111 111
112 // Legacy parsing allows <string>s for animation-name 112 // Legacy parsing allows <string>s for animation-name
113 bool consumeAnimationShorthand(const StylePropertyShorthand&, bool useLegacy Parsing, bool important); 113 bool consumeAnimationShorthand(const StylePropertyShorthand&, bool useLegacy Parsing, bool important);
114 bool consumeBackgroundShorthand(const StylePropertyShorthand&, bool importan t); 114 bool consumeBackgroundShorthand(const StylePropertyShorthand&, bool importan t);
115 115
116 bool consumeColumns(bool important); 116 bool consumeColumns(bool important);
117 117
118 bool consumeGridItemPositionShorthand(CSSPropertyID, bool important); 118 bool consumeGridItemPositionShorthand(CSSPropertyID, bool important);
119 RawPtr<CSSValue> parseGridTemplateColumns(bool important); 119 CSSValue* parseGridTemplateColumns(bool important);
120 bool parseGridTemplateRowsAndAreasAndColumns(bool important); 120 bool parseGridTemplateRowsAndAreasAndColumns(bool important);
121 bool parseGridTemplateShorthand(bool important); 121 bool parseGridTemplateShorthand(bool important);
122 bool parseGridShorthand(bool important); 122 bool parseGridShorthand(bool important);
123 bool consumeGridAreaShorthand(bool important); 123 bool consumeGridAreaShorthand(bool important);
124 RawPtr<CSSValue> parseGridTrackList(); 124 CSSValue* parseGridTrackList();
125 bool parseGridTrackRepeatFunction(CSSValueList&, bool& isAutoRepeat); 125 bool parseGridTrackRepeatFunction(CSSValueList&, bool& isAutoRepeat);
126 RawPtr<CSSValue> parseGridTrackSize(CSSParserValueList& inputList, TrackSize Restriction = AllowAll); 126 CSSValue* parseGridTrackSize(CSSParserValueList& inputList, TrackSizeRestric tion = AllowAll);
127 RawPtr<CSSPrimitiveValue> parseGridBreadth(CSSParserValue*, TrackSizeRestric tion = AllowAll); 127 CSSPrimitiveValue* parseGridBreadth(CSSParserValue*, TrackSizeRestriction = AllowAll);
128 bool parseGridLineNames(CSSParserValueList&, CSSValueList&, CSSGridLineNames Value* = nullptr); 128 bool parseGridLineNames(CSSParserValueList&, CSSValueList&, CSSGridLineNames Value* = nullptr);
129 RawPtr<CSSValue> parseGridAutoFlow(CSSParserValueList&); 129 CSSValue* parseGridAutoFlow(CSSParserValueList&);
130 130
131 bool consumeFont(bool important); 131 bool consumeFont(bool important);
132 bool consumeSystemFont(bool important); 132 bool consumeSystemFont(bool important);
133 133
134 bool consumeBorderSpacing(bool important); 134 bool consumeBorderSpacing(bool important);
135 135
136 // CSS3 Parsing Routines (for properties specific to CSS3) 136 // CSS3 Parsing Routines (for properties specific to CSS3)
137 bool consumeBorderImage(CSSPropertyID, bool important); 137 bool consumeBorderImage(CSSPropertyID, bool important);
138 138
139 bool consumeFlex(bool important); 139 bool consumeFlex(bool important);
140 140
141 bool consumeLegacyBreakProperty(CSSPropertyID, bool important); 141 bool consumeLegacyBreakProperty(CSSPropertyID, bool important);
142 142
143 bool parseCalculation(CSSParserValue*, ValueRange); 143 bool parseCalculation(CSSParserValue*, ValueRange);
144 144
145 RawPtr<CSSPrimitiveValue> createPrimitiveNumericValue(CSSParserValue*); 145 CSSPrimitiveValue* createPrimitiveNumericValue(CSSParserValue*);
146 RawPtr<CSSCustomIdentValue> createPrimitiveCustomIdentValue(CSSParserValue*) ; 146 CSSCustomIdentValue* createPrimitiveCustomIdentValue(CSSParserValue*);
147 147
148 class ShorthandScope { 148 class ShorthandScope {
149 STACK_ALLOCATED(); 149 STACK_ALLOCATED();
150 public: 150 public:
151 ShorthandScope(CSSPropertyParser* parser, CSSPropertyID propId) : m_pars er(parser) 151 ShorthandScope(CSSPropertyParser* parser, CSSPropertyID propId) : m_pars er(parser)
152 { 152 {
153 if (!(m_parser->m_inParseShorthand++)) 153 if (!(m_parser->m_inParseShorthand++))
154 m_parser->m_currentShorthand = propId; 154 m_parser->m_currentShorthand = propId;
155 } 155 }
156 ~ShorthandScope() 156 ~ShorthandScope()
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
198 // TODO(rob.buis): should move to CSSPropertyParser after conversion. 198 // TODO(rob.buis): should move to CSSPropertyParser after conversion.
199 bool allTracksAreFixedSized(CSSValueList&); 199 bool allTracksAreFixedSized(CSSValueList&);
200 bool parseGridTemplateAreasRow(const String&, NamedGridAreaMap&, const size_t, s ize_t&); 200 bool parseGridTemplateAreasRow(const String&, NamedGridAreaMap&, const size_t, s ize_t&);
201 201
202 CSSPropertyID unresolvedCSSPropertyID(const CSSParserString&); 202 CSSPropertyID unresolvedCSSPropertyID(const CSSParserString&);
203 CSSValueID cssValueKeywordID(const CSSParserString&); 203 CSSValueID cssValueKeywordID(const CSSParserString&);
204 204
205 } // namespace blink 205 } // namespace blink
206 206
207 #endif // CSSPropertyParser_h 207 #endif // CSSPropertyParser_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698