range_iterator default ctor

This commit is contained in:
Crzyrndm 2018-07-29 14:22:35 +12:00
parent 475f9f35d0
commit 9aff73747d

View File

@ -51,6 +51,11 @@ public:
using pointer = cell_vector *; using pointer = cell_vector *;
using reference = cell_vector; // intentionally value using reference = cell_vector; // intentionally value
/// <summary>
/// Default constructs a range iterator
/// </summary>
range_iterator() = default;
/// <summary> /// <summary>
/// Constructs a range iterator on a worksheet, cell pointing to the current /// Constructs a range iterator on a worksheet, cell pointing to the current
/// row or column, range bounds, an order, and whether or not to skip null column/rows. /// row or column, range bounds, an order, and whether or not to skip null column/rows.
@ -124,6 +129,16 @@ public:
range_iterator operator++(int); range_iterator operator++(int);
private: private:
/// <summary>
/// If true, empty rows and cells will be skipped when iterating with this iterator
/// </summary>
bool skip_null_ = false;
/// <summary>
/// Whether rows or columns should be iterated over first
/// </summary>
major_order order_ = major_order::column;
/// <summary> /// <summary>
/// The worksheet /// The worksheet
/// </summary> /// </summary>
@ -138,16 +153,6 @@ private:
/// The bounds of the range /// The bounds of the range
/// </summary> /// </summary>
range_reference bounds_; range_reference bounds_;
/// <summary>
/// Whether rows or columns should be iterated over first
/// </summary>
major_order order_;
/// <summary>
/// If true, empty rows and cells will be skipped when iterating with this iterator
/// </summary>
bool skip_null_;
}; };
/// <summary> /// <summary>
@ -166,6 +171,11 @@ public:
using pointer = const cell_vector *; using pointer = const cell_vector *;
using reference = const cell_vector; // intentionally value using reference = const cell_vector; // intentionally value
/// <summary>
/// Default constructs a range iterator
/// </summary>
const_range_iterator() = default;
/// <summary> /// <summary>
/// Constructs a range iterator on a worksheet, cell pointing to the current /// Constructs a range iterator on a worksheet, cell pointing to the current
/// row or column, range bounds, an order, and whether or not to skip null column/rows. /// row or column, range bounds, an order, and whether or not to skip null column/rows.
@ -234,6 +244,16 @@ public:
const_range_iterator operator++(int); const_range_iterator operator++(int);
private: private:
/// <summary>
/// If true, empty rows and cells will be skipped when iterating with this iterator
/// </summary>
bool skip_null_ = false;
/// <summary>
/// Determines whether iteration should move through rows or columns first
/// </summary>
major_order order_ = major_order::column;
/// <summary> /// <summary>
/// The implementation of the worksheet this iterator points to /// The implementation of the worksheet this iterator points to
/// </summary> /// </summary>
@ -248,16 +268,6 @@ private:
/// The range this iterator starts and ends in /// The range this iterator starts and ends in
/// </summary> /// </summary>
range_reference bounds_; range_reference bounds_;
/// <summary>
/// Determines whether iteration should move through rows or columns first
/// </summary>
major_order order_;
/// <summary>
/// If true, empty rows and cells will be skipped when iterating with this iterator
/// </summary>
bool skip_null_;
}; };
} // namespace xlnt } // namespace xlnt