summaryrefslogtreecommitdiffstats
path: root/src/grid.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/grid.rs')
-rw-r--r--src/grid.rs14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/grid.rs b/src/grid.rs
index 1c5b94c4..af3a8ae4 100644
--- a/src/grid.rs
+++ b/src/grid.rs
@@ -146,6 +146,10 @@ impl<T> Grid<T> {
self.cols
}
+ pub fn iter_rows(&self) -> slice::Iter<Row<T>> {
+ self.raw.iter()
+ }
+
#[inline]
pub fn scroll_down(&mut self, region: Range<index::Line>, positions: index::Line) {
for line in IndexRange(region).rev() {
@@ -334,6 +338,16 @@ impl<T> Row<T> {
}
}
+impl<'a, T> IntoIterator for &'a Grid<T> {
+ type Item = &'a Row<T>;
+ type IntoIter = slice::Iter<'a, Row<T>>;
+
+ #[inline]
+ fn into_iter(self) -> slice::Iter<'a, Row<T>> {
+ self.raw.iter()
+ }
+}
+
impl<'a, T> IntoIterator for &'a Row<T> {
type Item = &'a T;
type IntoIter = slice::Iter<'a, T>;