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

Side by Side Diff: Source/core/css/parser/CSSParserValues.h

Issue 790593004: CSS Parser: Implement selector parsing [1/3] (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 6 years 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 * 4 *
5 * This library is free software; you can redistribute it and/or 5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Library General Public 6 * modify it under the terms of the GNU Library General Public
7 * License as published by the Free Software Foundation; either 7 * License as published by the Free Software Foundation; either
8 * version 2 of the License, or (at your option) any later version. 8 * version 2 of the License, or (at your option) any later version.
9 * 9 *
10 * This library is distributed in the hope that it will be useful, 10 * This library is distributed in the hope that it will be useful,
(...skipping 198 matching lines...) Expand 10 before | Expand all | Expand 10 after
209 public: 209 public:
210 CSSValueID id; 210 CSSValueID id;
211 OwnPtr<CSSParserValueList> args; 211 OwnPtr<CSSParserValueList> args;
212 }; 212 };
213 213
214 class CSSParserSelector { 214 class CSSParserSelector {
215 WTF_MAKE_NONCOPYABLE(CSSParserSelector); WTF_MAKE_FAST_ALLOCATED; 215 WTF_MAKE_NONCOPYABLE(CSSParserSelector); WTF_MAKE_FAST_ALLOCATED;
216 public: 216 public:
217 CSSParserSelector(); 217 CSSParserSelector();
218 explicit CSSParserSelector(const QualifiedName&); 218 explicit CSSParserSelector(const QualifiedName&);
219
220 static PassOwnPtr<CSSParserSelector> create() { return adoptPtr(new CSSParse rSelector); }
221 static PassOwnPtr<CSSParserSelector> create(const QualifiedName& name) { ret urn adoptPtr(new CSSParserSelector(name)); }
222
219 ~CSSParserSelector(); 223 ~CSSParserSelector();
220 224
221 PassOwnPtr<CSSSelector> releaseSelector() { return m_selector.release(); } 225 PassOwnPtr<CSSSelector> releaseSelector() { return m_selector.release(); }
222 226
223 CSSSelector::Relation relation() const { return m_selector->relation(); } 227 CSSSelector::Relation relation() const { return m_selector->relation(); }
224 void setValue(const AtomicString& value) { m_selector->setValue(value); } 228 void setValue(const AtomicString& value) { m_selector->setValue(value); }
225 void setAttribute(const QualifiedName& value, CSSSelector::AttributeMatchTyp e matchType) { m_selector->setAttribute(value, matchType); } 229 void setAttribute(const QualifiedName& value, CSSSelector::AttributeMatchTyp e matchType) { m_selector->setAttribute(value, matchType); }
226 void setArgument(const AtomicString& value) { m_selector->setArgument(value) ; } 230 void setArgument(const AtomicString& value) { m_selector->setArgument(value) ; }
227 void setMatch(CSSSelector::Match value) { m_selector->setMatch(value); } 231 void setMatch(CSSSelector::Match value) { m_selector->setMatch(value); }
228 void setRelation(CSSSelector::Relation value) { m_selector->setRelation(valu e); } 232 void setRelation(CSSSelector::Relation value) { m_selector->setRelation(valu e); }
229 void setForPage() { m_selector->setForPage(); } 233 void setForPage() { m_selector->setForPage(); }
230 void setRelationIsAffectedByPseudoContent() { m_selector->setRelationIsAffec tedByPseudoContent(); } 234 void setRelationIsAffectedByPseudoContent() { m_selector->setRelationIsAffec tedByPseudoContent(); }
231 bool relationIsAffectedByPseudoContent() const { return m_selector->relation IsAffectedByPseudoContent(); } 235 bool relationIsAffectedByPseudoContent() const { return m_selector->relation IsAffectedByPseudoContent(); }
232 236
233 void adoptSelectorVector(Vector<OwnPtr<CSSParserSelector> >& selectorVector) ; 237 void adoptSelectorVector(Vector<OwnPtr<CSSParserSelector> >& selectorVector) ;
238 void setSelectorList(PassOwnPtr<CSSSelectorList>);
alancutter (OOO until 2018) 2014/12/15 13:52:58 Where is this called?
Timothy Loh 2014/12/15 23:43:04 Errr in part 3 of the patch for pseudo elements. I
234 239
235 bool hasHostPseudoSelector() const; 240 bool hasHostPseudoSelector() const;
236 bool isContentPseudoElement() const { return m_selector->isContentPseudoElem ent(); } 241 bool isContentPseudoElement() const { return m_selector->isContentPseudoElem ent(); }
237 242
238 CSSSelector::PseudoType pseudoType() const { return m_selector->pseudoType() ; } 243 CSSSelector::PseudoType pseudoType() const { return m_selector->pseudoType() ; }
239 bool isCustomPseudoElement() const { return m_selector->isCustomPseudoElemen t(); } 244 bool isCustomPseudoElement() const { return m_selector->isCustomPseudoElemen t(); }
240 bool crossesTreeScopes() const { return isCustomPseudoElement() || pseudoTyp e() == CSSSelector::PseudoCue || pseudoType() == CSSSelector::PseudoShadow; } 245 bool crossesTreeScopes() const { return isCustomPseudoElement() || pseudoTyp e() == CSSSelector::PseudoCue || pseudoType() == CSSSelector::PseudoShadow; }
241 246
242 bool isSimple() const; 247 bool isSimple() const;
243 bool hasShadowPseudo() const; 248 bool hasShadowPseudo() const;
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
290 { 295 {
291 id = CSSValueInvalid; 296 id = CSSValueInvalid;
292 this->valueList = valueList.leakPtr(); 297 this->valueList = valueList.leakPtr();
293 unit = ValueList; 298 unit = ValueList;
294 isInt = false; 299 isInt = false;
295 } 300 }
296 301
297 } 302 }
298 303
299 #endif 304 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698