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

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

Issue 143323014: *** DO NOT LAND *** Attempt to understand Regions complexity Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 11 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 | Annotate | Revision Log
« no previous file with comments | « Source/core/css/WebKitCSSRegionRule.idl ('k') | Source/core/css/parser/BisonCSSParser-in.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 258 matching lines...) Expand 10 before | Expand all | Expand 10 after
269 bool parseTextUnderlinePosition(bool important); 269 bool parseTextUnderlinePosition(bool important);
270 270
271 PassRefPtr<CSSValue> parseTextIndent(); 271 PassRefPtr<CSSValue> parseTextIndent();
272 272
273 bool parseLineBoxContain(bool important); 273 bool parseLineBoxContain(bool important);
274 bool parseCalculation(CSSParserValue*, ValueRange); 274 bool parseCalculation(CSSParserValue*, ValueRange);
275 275
276 bool parseFontFeatureTag(CSSValueList*); 276 bool parseFontFeatureTag(CSSValueList*);
277 bool parseFontFeatureSettings(bool important); 277 bool parseFontFeatureSettings(bool important);
278 278
279 bool parseFlowThread(CSSPropertyID, bool important);
280 bool parseRegionThread(CSSPropertyID, bool important);
281
282 bool parseFontVariantLigatures(bool important); 279 bool parseFontVariantLigatures(bool important);
283 280
284 bool parseGeneratedImage(CSSParserValueList*, RefPtr<CSSValue>&); 281 bool parseGeneratedImage(CSSParserValueList*, RefPtr<CSSValue>&);
285 282
286 CSSParserSelector* createFloatingSelector(); 283 CSSParserSelector* createFloatingSelector();
287 CSSParserSelector* createFloatingSelectorWithTagName(const QualifiedName&); 284 CSSParserSelector* createFloatingSelectorWithTagName(const QualifiedName&);
288 PassOwnPtr<CSSParserSelector> sinkFloatingSelector(CSSParserSelector*); 285 PassOwnPtr<CSSParserSelector> sinkFloatingSelector(CSSParserSelector*);
289 286
290 Vector<OwnPtr<CSSParserSelector> >* createFloatingSelectorVector(); 287 Vector<OwnPtr<CSSParserSelector> >* createFloatingSelectorVector();
291 PassOwnPtr<Vector<OwnPtr<CSSParserSelector> > > sinkFloatingSelectorVector(V ector<OwnPtr<CSSParserSelector> >*); 288 PassOwnPtr<Vector<OwnPtr<CSSParserSelector> > > sinkFloatingSelectorVector(V ector<OwnPtr<CSSParserSelector> >*);
(...skipping 12 matching lines...) Expand all
304 StyleKeyframe* createKeyframe(CSSParserValueList*); 301 StyleKeyframe* createKeyframe(CSSParserValueList*);
305 StyleRuleKeyframes* createKeyframesRule(const String&, PassOwnPtr<Vector<Ref Ptr<StyleKeyframe> > >, bool isPrefixed); 302 StyleRuleKeyframes* createKeyframesRule(const String&, PassOwnPtr<Vector<Ref Ptr<StyleKeyframe> > >, bool isPrefixed);
306 303
307 typedef Vector<RefPtr<StyleRuleBase> > RuleList; 304 typedef Vector<RefPtr<StyleRuleBase> > RuleList;
308 StyleRuleBase* createMediaRule(MediaQuerySet*, RuleList*); 305 StyleRuleBase* createMediaRule(MediaQuerySet*, RuleList*);
309 RuleList* createRuleList(); 306 RuleList* createRuleList();
310 RuleList* appendRule(RuleList*, StyleRuleBase*); 307 RuleList* appendRule(RuleList*, StyleRuleBase*);
311 StyleRuleBase* createStyleRule(Vector<OwnPtr<CSSParserSelector> >* selectors ); 308 StyleRuleBase* createStyleRule(Vector<OwnPtr<CSSParserSelector> >* selectors );
312 StyleRuleBase* createFontFaceRule(); 309 StyleRuleBase* createFontFaceRule();
313 StyleRuleBase* createPageRule(PassOwnPtr<CSSParserSelector> pageSelector); 310 StyleRuleBase* createPageRule(PassOwnPtr<CSSParserSelector> pageSelector);
314 StyleRuleBase* createRegionRule(Vector<OwnPtr<CSSParserSelector> >* regionSe lector, RuleList* rules);
315 StyleRuleBase* createMarginAtRule(CSSSelector::MarginBoxType); 311 StyleRuleBase* createMarginAtRule(CSSSelector::MarginBoxType);
316 StyleRuleBase* createSupportsRule(bool conditionIsSupported, RuleList*); 312 StyleRuleBase* createSupportsRule(bool conditionIsSupported, RuleList*);
317 void markSupportsRuleHeaderStart(); 313 void markSupportsRuleHeaderStart();
318 void markSupportsRuleHeaderEnd(); 314 void markSupportsRuleHeaderEnd();
319 PassRefPtr<CSSRuleSourceData> popSupportsRuleData(); 315 PassRefPtr<CSSRuleSourceData> popSupportsRuleData();
320 StyleRuleBase* createHostRule(RuleList* rules); 316 StyleRuleBase* createHostRule(RuleList* rules);
321 317
322 void startDeclarationsForMarginBox(); 318 void startDeclarationsForMarginBox();
323 void endDeclarationsForMarginBox(); 319 void endDeclarationsForMarginBox();
324 320
(...skipping 16 matching lines...) Expand all
341 CSSParserSelector* rewriteSpecifiersWithElementNameForCustomPseudoElement(co nst QualifiedName& tag, const AtomicString& elementName, CSSParserSelector* spec ifiers, bool tagIsForNamespaceRule); 337 CSSParserSelector* rewriteSpecifiersWithElementNameForCustomPseudoElement(co nst QualifiedName& tag, const AtomicString& elementName, CSSParserSelector* spec ifiers, bool tagIsForNamespaceRule);
342 CSSParserSelector* rewriteSpecifiersWithElementNameForContentPseudoElement(c onst QualifiedName& tag, const AtomicString& elementName, CSSParserSelector* spe cifiers, bool tagIsForNamespaceRule); 338 CSSParserSelector* rewriteSpecifiersWithElementNameForContentPseudoElement(c onst QualifiedName& tag, const AtomicString& elementName, CSSParserSelector* spe cifiers, bool tagIsForNamespaceRule);
343 CSSParserSelector* rewriteSpecifiersWithNamespaceIfNeeded(CSSParserSelector* ); 339 CSSParserSelector* rewriteSpecifiersWithNamespaceIfNeeded(CSSParserSelector* );
344 CSSParserSelector* rewriteSpecifiers(CSSParserSelector*, CSSParserSelector*) ; 340 CSSParserSelector* rewriteSpecifiers(CSSParserSelector*, CSSParserSelector*) ;
345 CSSParserSelector* rewriteSpecifiersForShadowDistributed(CSSParserSelector* specifiers, CSSParserSelector* distributedPseudoElementSelector); 341 CSSParserSelector* rewriteSpecifiersForShadowDistributed(CSSParserSelector* specifiers, CSSParserSelector* distributedPseudoElementSelector);
346 342
347 void invalidBlockHit(); 343 void invalidBlockHit();
348 344
349 Vector<OwnPtr<CSSParserSelector> >* reusableSelectorVector() { return &m_reu sableSelectorVector; } 345 Vector<OwnPtr<CSSParserSelector> >* reusableSelectorVector() { return &m_reu sableSelectorVector; }
350 346
351 void setReusableRegionSelectorVector(Vector<OwnPtr<CSSParserSelector> >* sel ectors);
352 Vector<OwnPtr<CSSParserSelector> >* reusableRegionSelectorVector() { return &m_reusableRegionSelectorVector; }
353
354 void clearProperties(); 347 void clearProperties();
355 348
356 PassRefPtr<ImmutableStylePropertySet> createStylePropertySet(); 349 PassRefPtr<ImmutableStylePropertySet> createStylePropertySet();
357 350
358 CSSParserContext m_context; 351 CSSParserContext m_context;
359 352
360 bool m_important; 353 bool m_important;
361 CSSPropertyID m_id; 354 CSSPropertyID m_id;
362 StyleSheetContents* m_styleSheet; 355 StyleSheetContents* m_styleSheet;
363 RefPtr<StyleRuleBase> m_rule; 356 RefPtr<StyleRuleBase> m_rule;
(...skipping 173 matching lines...) Expand 10 before | Expand all | Expand 10 after
537 Vector<CSSParserValueList*> m_floatingValueLists; 530 Vector<CSSParserValueList*> m_floatingValueLists;
538 Vector<CSSParserFunction*> m_floatingFunctions; 531 Vector<CSSParserFunction*> m_floatingFunctions;
539 532
540 OwnPtr<MediaQuery> m_floatingMediaQuery; 533 OwnPtr<MediaQuery> m_floatingMediaQuery;
541 OwnPtr<MediaQueryExp> m_floatingMediaQueryExp; 534 OwnPtr<MediaQueryExp> m_floatingMediaQueryExp;
542 OwnPtr<Vector<OwnPtr<MediaQueryExp> > > m_floatingMediaQueryExpList; 535 OwnPtr<Vector<OwnPtr<MediaQueryExp> > > m_floatingMediaQueryExpList;
543 536
544 OwnPtr<Vector<RefPtr<StyleKeyframe> > > m_floatingKeyframeVector; 537 OwnPtr<Vector<RefPtr<StyleKeyframe> > > m_floatingKeyframeVector;
545 538
546 Vector<OwnPtr<CSSParserSelector> > m_reusableSelectorVector; 539 Vector<OwnPtr<CSSParserSelector> > m_reusableSelectorVector;
547 Vector<OwnPtr<CSSParserSelector> > m_reusableRegionSelectorVector;
548 540
549 RefPtr<CSSCalcValue> m_parsedCalculation; 541 RefPtr<CSSCalcValue> m_parsedCalculation;
550 542
551 OwnPtr<RuleSourceDataList> m_supportsRuleDataStack; 543 OwnPtr<RuleSourceDataList> m_supportsRuleDataStack;
552 544
553 // defines units allowed for a certain property, used in parseUnit 545 // defines units allowed for a certain property, used in parseUnit
554 enum Units { 546 enum Units {
555 FUnknown = 0x0000, 547 FUnknown = 0x0000,
556 FInteger = 0x0001, 548 FInteger = 0x0001,
557 FNumber = 0x0002, // Real Numbers 549 FNumber = 0x0002, // Real Numbers
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
624 bool isValidNthToken(const CSSParserString&); 616 bool isValidNthToken(const CSSParserString&);
625 617
626 inline int cssyylex(void* yylval, BisonCSSParser* parser) 618 inline int cssyylex(void* yylval, BisonCSSParser* parser)
627 { 619 {
628 return parser->m_tokenizer.lex(yylval); 620 return parser->m_tokenizer.lex(yylval);
629 } 621 }
630 622
631 } // namespace WebCore 623 } // namespace WebCore
632 624
633 #endif // CSSParser_h 625 #endif // CSSParser_h
OLDNEW
« no previous file with comments | « Source/core/css/WebKitCSSRegionRule.idl ('k') | Source/core/css/parser/BisonCSSParser-in.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698