Advance should not be called on beyond-of-range iterators so no component iterators must be beyond end of range, either.
| 15260 | // Advance should not be called on beyond-of-range iterators |
| 15261 | // so no component iterators must be beyond end of range, either. |
| 15262 | virtual void Advance() { |
| 15263 | assert(!AtEnd()); |
| 15264 | ++current10_; |
| 15265 | if (current10_ == end10_) { |
| 15266 | current10_ = begin10_; |
| 15267 | ++current9_; |
| 15268 | } |
| 15269 | if (current9_ == end9_) { |
| 15270 | current9_ = begin9_; |
| 15271 | ++current8_; |
| 15272 | } |
| 15273 | if (current8_ == end8_) { |
| 15274 | current8_ = begin8_; |
| 15275 | ++current7_; |
| 15276 | } |
| 15277 | if (current7_ == end7_) { |
| 15278 | current7_ = begin7_; |
| 15279 | ++current6_; |
| 15280 | } |
| 15281 | if (current6_ == end6_) { |
| 15282 | current6_ = begin6_; |
| 15283 | ++current5_; |
| 15284 | } |
| 15285 | if (current5_ == end5_) { |
| 15286 | current5_ = begin5_; |
| 15287 | ++current4_; |
| 15288 | } |
| 15289 | if (current4_ == end4_) { |
| 15290 | current4_ = begin4_; |
| 15291 | ++current3_; |
| 15292 | } |
| 15293 | if (current3_ == end3_) { |
| 15294 | current3_ = begin3_; |
| 15295 | ++current2_; |
| 15296 | } |
| 15297 | if (current2_ == end2_) { |
| 15298 | current2_ = begin2_; |
| 15299 | ++current1_; |
| 15300 | } |
| 15301 | ComputeCurrentValue(); |
| 15302 | } |
| 15303 | virtual ParamIteratorInterface<ParamType>* Clone() const { |
| 15304 | return new Iterator(*this); |
| 15305 | } |
nothing calls this directly
no outgoing calls
no test coverage detected