| OLD | NEW |
| (Empty) |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | |
| 2 // Use of this source code is governed by a BSD-style license that can be | |
| 3 // found in the LICENSE file. | |
| 4 | |
| 5 #include "core/layout/ng/ng_box_iterator.h" | |
| 6 #include "core/layout/ng/ng_box.h" | |
| 7 | |
| 8 namespace blink { | |
| 9 | |
| 10 NGBoxIterator::NGBoxIterator(const LayoutObject* layoutObject) | |
| 11 : m_layoutObject(layoutObject), m_currentChild(nullptr) {} | |
| 12 | |
| 13 NGBox NGBoxIterator::first() { | |
| 14 reset(); | |
| 15 return next(); | |
| 16 } | |
| 17 | |
| 18 NGBox NGBoxIterator::next() { | |
| 19 if (!m_currentChild) { | |
| 20 m_currentChild = m_layoutObject->slowFirstChild(); | |
| 21 } else { | |
| 22 m_currentChild = m_layoutObject->nextSibling(); | |
| 23 } | |
| 24 return NGBox(m_currentChild); | |
| 25 } | |
| 26 | |
| 27 void NGBoxIterator::reset() { | |
| 28 m_currentChild = nullptr; | |
| 29 } | |
| 30 | |
| 31 } // namespace blink | |
| OLD | NEW |