RESOLVED FIXED 128510
Add type-safe casts for ContentData subclasses
https://bugs.webkit.org/show_bug.cgi?id=128510
Summary Add type-safe casts for ContentData subclasses
David Kilzer (:ddkilzer)
Reported 2014-02-09 18:18:50 PST
Add type-safe casts for all of the ContentData subclasses.
Attachments
Patch v1 (10.35 KB, patch)
2014-02-09 18:25 PST, David Kilzer (:ddkilzer)
no flags
David Kilzer (:ddkilzer)
Comment 1 2014-02-09 18:25:29 PST
Created attachment 223660 [details] Patch v1
Darin Adler
Comment 2 2014-02-09 23:48:36 PST
Comment on attachment 223660 [details] Patch v1 View in context: https://bugs.webkit.org/attachment.cgi?id=223660&action=review > Source/WebCore/rendering/style/ContentData.h:105 > +inline bool ImageContentData::equals(const ContentData& data) const > +{ > + if (!data.isImage()) > + return false; > + return *toImageContentData(data).image() == *image(); > +} I think we could move this to the .cpp file, because I think everyone calls it polymorphically and so nobody really inlines it. I also think this could read nicely with && rather than early return. > Source/WebCore/rendering/style/ContentData.h:135 > +inline bool TextContentData::equals(const ContentData& data) const > +{ > + if (!data.isText()) > + return false; > + return toTextContentData(data).text() == text(); > +} Ditto. > Source/WebCore/rendering/style/ContentData.h:169 > +inline bool CounterContentData::equals(const ContentData& data) const > +{ > + if (!data.isCounter()) > + return false; > + return *toCounterContentData(data).counter() == *counter(); > +} Again. > Source/WebCore/rendering/style/ContentData.h:199 > +inline bool QuoteContentData::equals(const ContentData& data) const > +{ > + if (!data.isQuote()) > + return false; > + return toQuoteContentData(data).quote() == quote(); > +} Ditto.
WebKit Commit Bot
Comment 3 2014-02-10 00:18:54 PST
Comment on attachment 223660 [details] Patch v1 Clearing flags on attachment: 223660 Committed r163770: <http://trac.webkit.org/changeset/163770>
WebKit Commit Bot
Comment 4 2014-02-10 00:18:57 PST
All reviewed patches have been landed. Closing bug.
David Kilzer (:ddkilzer)
Comment 5 2014-02-10 09:30:40 PST
(In reply to comment #2) > (From update of attachment 223660 [details]) > View in context: https://bugs.webkit.org/attachment.cgi?id=223660&action=review > > > Source/WebCore/rendering/style/ContentData.h:105 > > +inline bool ImageContentData::equals(const ContentData& data) const > > +{ > > + if (!data.isImage()) > > + return false; > > + return *toImageContentData(data).image() == *image(); > > +} > > I think we could move this to the .cpp file, because I think everyone calls it polymorphically and so nobody really inlines it. > > I also think this could read nicely with && rather than early return. Filed Bug 128538 to track this.
Note You need to log in before you can comment on or make changes to this bug.