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

Unified Diff: Source/core/css/parser/BisonCSSParser.h

Issue 170283019: Change various helper classes to transition types to get CSSValue entirely onto the gc heap. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 10 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 side-by-side diff with in-line comments
Download patch
Index: Source/core/css/parser/BisonCSSParser.h
diff --git a/Source/core/css/parser/BisonCSSParser.h b/Source/core/css/parser/BisonCSSParser.h
index d6c990ab002a75bebf04452cd843a68a8fbf94e0..6e313ef04f2c32e82d8dcbb6c282cc6e4f0d0130 100644
--- a/Source/core/css/parser/BisonCSSParser.h
+++ b/Source/core/css/parser/BisonCSSParser.h
@@ -98,7 +98,7 @@ public:
static PassRefPtrWillBeRawPtr<CSSValue> parseAnimationTimingFunctionValue(const String&);
bool parseDeclaration(MutableStylePropertySet*, const String&, CSSParserObserver*, StyleSheetContents* contextStyleSheet);
static PassRefPtr<ImmutableStylePropertySet> parseInlineStyleDeclaration(const String&, Element*);
- PassRefPtr<MediaQuerySet> parseMediaQueryList(const String&);
+ PassRefPtrWillBeRawPtr<MediaQuerySet> parseMediaQueryList(const String&);
PassOwnPtr<Vector<double> > parseKeyframeKeyList(const String&);
static bool parseValue(MutableStylePropertySet*, CSSPropertyID, const String&, bool important, const Document&);
@@ -145,13 +145,13 @@ public:
void endDeclarationsForMarginBox();
MediaQueryExp* createFloatingMediaQueryExp(const AtomicString&, CSSParserValueList*);
- PassOwnPtr<MediaQueryExp> sinkFloatingMediaQueryExp(MediaQueryExp*);
- Vector<OwnPtr<MediaQueryExp> >* createFloatingMediaQueryExpList();
- PassOwnPtr<Vector<OwnPtr<MediaQueryExp> > > sinkFloatingMediaQueryExpList(Vector<OwnPtr<MediaQueryExp> >*);
- MediaQuery* createFloatingMediaQuery(MediaQuery::Restrictor, const AtomicString&, PassOwnPtr<Vector<OwnPtr<MediaQueryExp> > >);
- MediaQuery* createFloatingMediaQuery(PassOwnPtr<Vector<OwnPtr<MediaQueryExp> > >);
+ PassOwnPtrWillBeRawPtr<MediaQueryExp> sinkFloatingMediaQueryExp(MediaQueryExp*);
+ WillBeHeapVector<OwnPtrWillBeMember<MediaQueryExp> >* createFloatingMediaQueryExpList();
+ PassOwnPtrWillBeRawPtr<WillBeHeapVector<OwnPtrWillBeMember<MediaQueryExp> > > sinkFloatingMediaQueryExpList(WillBeHeapVector<OwnPtrWillBeMember<MediaQueryExp> >*);
+ MediaQuery* createFloatingMediaQuery(MediaQuery::Restrictor, const AtomicString&, PassOwnPtrWillBeRawPtr<WillBeHeapVector<OwnPtrWillBeMember<MediaQueryExp> > >);
+ MediaQuery* createFloatingMediaQuery(PassOwnPtrWillBeRawPtr<WillBeHeapVector<OwnPtrWillBeMember<MediaQueryExp> > >);
MediaQuery* createFloatingNotAllQuery();
- PassOwnPtr<MediaQuery> sinkFloatingMediaQuery(MediaQuery*);
+ PassOwnPtrWillBeRawPtr<MediaQuery> sinkFloatingMediaQuery(MediaQuery*);
Vector<RefPtr<StyleKeyframe> >* createFloatingKeyframeVector();
PassOwnPtr<Vector<RefPtr<StyleKeyframe> > > sinkFloatingKeyframeVector(Vector<RefPtr<StyleKeyframe> >*);
@@ -181,7 +181,7 @@ public:
StyleSheetContents* m_styleSheet;
RefPtr<StyleRuleBase> m_rule;
RefPtr<StyleKeyframe> m_keyframe;
- RefPtr<MediaQuerySet> m_mediaList;
+ RefPtrWillBePersistent<MediaQuerySet> m_mediaList;
OwnPtr<CSSParserValueList> m_valueList;
bool m_supportsCondition;
@@ -291,16 +291,16 @@ private:
Vector<RefPtr<StyleRuleBase> > m_parsedRules;
Vector<RefPtr<StyleKeyframe> > m_parsedKeyframes;
- Vector<RefPtr<MediaQuerySet> > m_parsedMediaQuerySets;
+ WillBePersistentHeapVector<RefPtrWillBeMember<MediaQuerySet> > m_parsedMediaQuerySets;
Vector<OwnPtr<RuleList> > m_parsedRuleLists;
Vector<CSSParserSelector*> m_floatingSelectors;
Vector<Vector<OwnPtr<CSSParserSelector> >*> m_floatingSelectorVectors;
Vector<CSSParserValueList*> m_floatingValueLists;
Vector<CSSParserFunction*> m_floatingFunctions;
- OwnPtr<MediaQuery> m_floatingMediaQuery;
- OwnPtr<MediaQueryExp> m_floatingMediaQueryExp;
- OwnPtr<Vector<OwnPtr<MediaQueryExp> > > m_floatingMediaQueryExpList;
+ OwnPtrWillBePersistent<MediaQuery> m_floatingMediaQuery;
+ OwnPtrWillBePersistent<MediaQueryExp> m_floatingMediaQueryExp;
+ OwnPtrWillBePersistent<WillBeHeapVector<OwnPtrWillBeMember<MediaQueryExp> > > m_floatingMediaQueryExpList;
haraken 2014/02/21 01:02:36 Can you use WillBePersistentHeapVector<OwnPtrWillB
wibling-chromium 2014/02/21 08:43:08 Yes, thanks for catching this.
OwnPtr<Vector<RefPtr<StyleKeyframe> > > m_floatingKeyframeVector;

Powered by Google App Engine
This is Rietveld 408576698