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

Unified Diff: Source/core/layout/LayoutTableSection.h

Issue 869323003: Oilpan: move RenderObjects off heap. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: minor fixes Created 5 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 side-by-side diff with in-line comments
Download patch
Index: Source/core/layout/LayoutTableSection.h
diff --git a/Source/core/layout/LayoutTableSection.h b/Source/core/layout/LayoutTableSection.h
index 2edb4681da2c8ee47658571b488c270a8acf357c..e42eb83a50319ae8f48fdd440b8eeb1872c366a6 100644
--- a/Source/core/layout/LayoutTableSection.h
+++ b/Source/core/layout/LayoutTableSection.h
@@ -67,7 +67,6 @@ class LayoutTableSection final : public RenderBox {
public:
LayoutTableSection(Element*);
virtual ~LayoutTableSection();
- virtual void trace(Visitor*) override;
LayoutTableRow* firstRow() const;
LayoutTableRow* lastRow() const;
@@ -87,34 +86,33 @@ public:
LayoutTable* table() const { return toLayoutTable(parent()); }
- typedef WillBeHeapVector<RawPtrWillBeMember<LayoutTableCell>, 2> SpanningLayoutTableCells;
+ typedef Vector<LayoutTableCell*, 2> SpanningLayoutTableCells;
struct CellStruct {
ALLOW_ONLY_INLINE_ALLOCATION();
haraken 2015/02/04 05:48:56 You can drop ALLOW_ONLY_INLINE_ALLOCATION().
sof 2015/02/04 08:44:31 Done, but does it add value to do so?
public:
- WillBeHeapVector<RawPtrWillBeMember<LayoutTableCell>, 1> cells;
+ Vector<LayoutTableCell*, 1> cells;
bool inColSpan; // true for columns after the first in a colspan
CellStruct()
: inColSpan(false)
{
}
- void trace(Visitor*);
LayoutTableCell* primaryCell()
{
- return hasCells() ? cells[cells.size() - 1].get() : 0;
+ return hasCells() ? cells[cells.size() - 1] : 0;
}
const LayoutTableCell* primaryCell() const
{
- return hasCells() ? cells[cells.size() - 1].get() : 0;
+ return hasCells() ? cells[cells.size() - 1] : 0;
}
bool hasCells() const { return cells.size() > 0; }
};
- typedef WillBeHeapVector<CellStruct> Row;
+ typedef Vector<CellStruct> Row;
struct RowStruct {
ALLOW_ONLY_INLINE_ALLOCATION();
haraken 2015/02/04 05:48:56 You can drop ALLOW_ONLY_INLINE_ALLOCATION().
sof 2015/02/04 08:44:31 Done.
@@ -124,10 +122,9 @@ public:
, baseline()
{
}
- void trace(Visitor*);
Row row;
- RawPtrWillBeMember<LayoutTableRow> rowRenderer;
+ LayoutTableRow* rowRenderer;
LayoutUnit baseline;
Length logicalHeight;
};
@@ -232,7 +229,7 @@ public:
CellSpan dirtiedRows(const LayoutRect& paintInvalidationRect) const;
CellSpan dirtiedColumns(const LayoutRect& paintInvalidationRect) const;
- WillBeHeapHashSet<RawPtrWillBeMember<LayoutTableCell> >& overflowingCells() { return m_overflowingCells; }
+ HashSet<LayoutTableCell*>& overflowingCells() { return m_overflowingCells; }
bool hasMultipleCellLevels() { return m_hasMultipleCellLevels; }
protected:
@@ -292,7 +289,7 @@ private:
RenderObjectChildList m_children;
- WillBeHeapVector<RowStruct> m_grid;
+ Vector<RowStruct> m_grid;
Vector<int> m_rowPos;
// the current insertion position
@@ -309,14 +306,14 @@ private:
// This HashSet holds the overflowing cells for faster painting.
// If we have more than gMaxAllowedOverflowingCellRatio * total cells, it will be empty
// and m_forceSlowPaintPathWithOverflowingCell will be set to save memory.
- WillBeHeapHashSet<RawPtrWillBeMember<LayoutTableCell> > m_overflowingCells;
+ HashSet<LayoutTableCell*> m_overflowingCells;
bool m_forceSlowPaintPathWithOverflowingCell;
bool m_hasMultipleCellLevels;
// This map holds the collapsed border values for cells with collapsed borders.
// It is held at LayoutTableSection level to spare memory consumption by table cells.
- WillBeHeapHashMap<pair<RawPtrWillBeMember<const LayoutTableCell>, int>, CollapsedBorderValue > m_cellsCollapsedBorders;
+ HashMap<pair<const LayoutTableCell*, int>, CollapsedBorderValue> m_cellsCollapsedBorders;
};
DEFINE_RENDER_OBJECT_TYPE_CASTS(LayoutTableSection, isTableSection());

Powered by Google App Engine
This is Rietveld 408576698