Changeset 212860 in webkit


Ignore:
Timestamp:
Feb 22, 2017 3:55:34 PM (7 years ago)
Author:
Antti Koivisto
Message:

Replace SimpleLineLayout::Range by WTF::IteratorRange
https://bugs.webkit.org/show_bug.cgi?id=168742

Reviewed by Zalan Bujtas.

Kill a redundant custom type.

  • rendering/SimpleLineLayoutResolver.cpp:

(WebCore::SimpleLineLayout::RunResolver::rangeForRect):
(WebCore::SimpleLineLayout::RunResolver::rangeForRenderer):
(WebCore::SimpleLineLayout::RunResolver::rangeForRendererWithOffsets):

  • rendering/SimpleLineLayoutResolver.h:

(WebCore::SimpleLineLayout::LineResolver::rangeForRect):
(WebCore::SimpleLineLayout::Range::Range): Deleted.
(WebCore::SimpleLineLayout::Range::begin): Deleted.
(WebCore::SimpleLineLayout::Range::end): Deleted.

Location:
trunk/Source/WebCore
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r212857 r212860  
     12017-02-22  Antti Koivisto  <antti@apple.com>
     2
     3        Replace SimpleLineLayout::Range by WTF::IteratorRange
     4        https://bugs.webkit.org/show_bug.cgi?id=168742
     5
     6        Reviewed by Zalan Bujtas.
     7
     8        Kill a redundant custom type.
     9
     10        * rendering/SimpleLineLayoutResolver.cpp:
     11        (WebCore::SimpleLineLayout::RunResolver::rangeForRect):
     12        (WebCore::SimpleLineLayout::RunResolver::rangeForRenderer):
     13        (WebCore::SimpleLineLayout::RunResolver::rangeForRendererWithOffsets):
     14        * rendering/SimpleLineLayoutResolver.h:
     15        (WebCore::SimpleLineLayout::LineResolver::rangeForRect):
     16        (WebCore::SimpleLineLayout::Range::Range): Deleted.
     17        (WebCore::SimpleLineLayout::Range::begin): Deleted.
     18        (WebCore::SimpleLineLayout::Range::end): Deleted.
     19
    1202017-02-22  Simon Fraser  <simon.fraser@apple.com>
    221
  • trunk/Source/WebCore/rendering/SimpleLineLayoutResolver.cpp

    r212693 r212860  
    146146}
    147147
    148 Range<RunResolver::Iterator> RunResolver::rangeForRect(const LayoutRect& rect) const
     148WTF::IteratorRange<RunResolver::Iterator> RunResolver::rangeForRect(const LayoutRect& rect) const
    149149{
    150150    if (!m_lineHeight)
    151         return Range<Iterator>(begin(), end());
     151        return { begin(), end() };
    152152
    153153    unsigned firstLine = lineIndexForHeight(rect.y(), IndexType::First);
     
    156156    auto rangeBegin = begin().advanceLines(firstLine);
    157157    if (rangeBegin == end())
    158         return Range<Iterator>(end(), end());
     158        return { end(), end() };
    159159    auto rangeEnd = rangeBegin;
    160160    ASSERT(lastLine >= firstLine);
    161161    rangeEnd.advanceLines(lastLine - firstLine + 1);
    162     return Range<Iterator>(rangeBegin, rangeEnd);
    163 }
    164 
    165 Range<RunResolver::Iterator> RunResolver::rangeForRenderer(const RenderObject& renderer) const
     162    return { rangeBegin, rangeEnd };
     163}
     164
     165WTF::IteratorRange<RunResolver::Iterator> RunResolver::rangeForRenderer(const RenderObject& renderer) const
    166166{
    167167    if (begin() == end())
    168         return Range<Iterator>(end(), end());
     168        return { end(), end() };
    169169    FlowContents::Iterator segment = m_flowContents.begin();
    170170    auto run = begin();
     
    184184    // Collapsed whitespace with dedicated renderer could end up with no run at all.
    185185    if (run == end() || (segment->start != segment->end && segment->end <= (*run).start()))
    186         return Range<Iterator>(end(), end());
     186        return { end(), end() };
    187187
    188188    auto rangeBegin = run;
     
    193193    if (run == rangeBegin)
    194194        ++run;
    195     return Range<Iterator>(rangeBegin, run);
     195    return { rangeBegin, run };
    196196}
    197197
     
    220220}
    221221
    222 Range<RunResolver::Iterator> RunResolver::rangeForRendererWithOffsets(const RenderObject& renderer, unsigned startOffset, unsigned endOffset) const
     222WTF::IteratorRange<RunResolver::Iterator> RunResolver::rangeForRendererWithOffsets(const RenderObject& renderer, unsigned startOffset, unsigned endOffset) const
    223223{
    224224    ASSERT(startOffset <= endOffset);
  • trunk/Source/WebCore/rendering/SimpleLineLayoutResolver.h

    r212854 r212860  
    3030#include "SimpleLineLayoutFlowContents.h"
    3131#include "SimpleLineLayoutFunctions.h"
     32#include <wtf/IteratorRange.h>
    3233#include <wtf/text/WTFString.h>
    3334
    3435namespace WebCore {
    3536namespace SimpleLineLayout {
    36 
    37 template <class IteratorType>
    38 class Range {
    39 public:
    40     Range(IteratorType begin, IteratorType end) : m_begin(begin), m_end(end) { }
    41 
    42     IteratorType begin() const { return m_begin; }
    43     IteratorType end() const { return m_end; }
    44 
    45 private:
    46     IteratorType m_begin;
    47     IteratorType m_end;
    48 };
    4937
    5038class RunResolver {
     
    114102    Iterator end() const;
    115103
    116     Range<Iterator> rangeForRect(const LayoutRect&) const;
    117     Range<Iterator> rangeForRenderer(const RenderObject&) const;
     104    WTF::IteratorRange<Iterator> rangeForRect(const LayoutRect&) const;
     105    WTF::IteratorRange<Iterator> rangeForRenderer(const RenderObject&) const;
    118106    Iterator runForPoint(const LayoutPoint&) const;
    119     Range<Iterator> rangeForRendererWithOffsets(const RenderObject&, unsigned start, unsigned end) const;
     107    WTF::IteratorRange<Iterator> rangeForRendererWithOffsets(const RenderObject&, unsigned start, unsigned end) const;
    120108
    121109private:
     
    159147    Iterator end() const;
    160148
    161     Range<Iterator> rangeForRect(const LayoutRect&) const;
     149    WTF::IteratorRange<Iterator> rangeForRect(const LayoutRect&) const;
    162150
    163151private:
     
    297285}
    298286
    299 inline Range<LineResolver::Iterator> LineResolver::rangeForRect(const LayoutRect& rect) const
     287inline WTF::IteratorRange<LineResolver::Iterator> LineResolver::rangeForRect(const LayoutRect& rect) const
    300288{
    301289    auto runRange = m_runResolver.rangeForRect(rect);
    302     return Range<Iterator>(Iterator(runRange.begin()), Iterator(runRange.end()));
     290    return { Iterator(runRange.begin()), Iterator(runRange.end()) };
    303291}
    304292
Note: See TracChangeset for help on using the changeset viewer.