MCPcopy Create free account
hub / github.com/clMathLibraries/clBLAS / IteratorETS

Class IteratorETS

src/tests/include/ExtraTestSizes.h:88–208  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

86};
87
88template<typename T2, typename T3> class IteratorETS
89{
90public:
91 typedef ExtraTestSizes value_type;
92 typedef std::forward_iterator_tag iterator_category;
93 typedef int difference_type;
94 typedef ExtraTestSizes* pointer;
95 typedef ExtraTestSizes& reference;
96
97 IteratorETS(
98 const size_t *begin1,
99 const size_t *end1,
100 const T2 *begin2,
101 const T2 *end2,
102 const T3 *begin3,
103 const T3 *end3,
104 const size_t *begin4,
105 const size_t *end4,
106 const size_t *begin5,
107 const size_t *end5,
108 const size_t *begin6,
109 const size_t *end6,
110 int startEnd) : begin1_(begin1), end1_(end1),
111 begin2_(begin2), end2_(end2),
112 begin3_(begin3), end3_(end3),
113 begin4_(begin4), end4_(end4),
114 begin5_(begin5), end5_(end5),
115 begin6_(begin6), end6_(end6)
116 {
117 cur1_ = (startEnd) ? end1_ : begin1_;
118 cur2_ = begin2_;
119 cur3_ = begin3_;
120 cur4_ = begin4_;
121 cur5_ = begin5_;
122 cur6_ = begin6_;
123 }
124
125 IteratorETS& operator++()
126 {
127 bool carry = false;
128
129 // don't go beyond the end
130 if (cur1_ == end1_) {
131 return *this;
132 }
133
134 carry = (cur6_ + 1 == end6_);
135 cur6_ = (carry) ? begin6_ : (cur6_ + 1);
136 if (carry) {
137 carry = (cur5_ + 1 == end5_);
138 cur5_ = (carry) ? begin5_ : (cur5_ + 1);
139 }
140 if (carry) {
141 carry = (cur4_ + 1 == end4_);
142 cur4_ = (carry) ? begin4_ : (cur4_ + 1);
143 }
144 if (carry) {
145 carry = (cur3_ + 1 == end3_);

Callers

nothing calls this directly

Calls 1

ExtraTestSizesClass · 0.85

Tested by

no test coverage detected