BaseIterator (bi),
predicate (new PredicateTemplate<Predicate>(p))
{
- Assert ((state() != IteratorState::valid) || (*predicate) (*this),
+ Assert ((this->state() != IteratorState::valid) || (*predicate) (*this),
ExcInvalidElement(bi));
}
set_to_next_positive (const BaseIterator &bi)
{
BaseIterator::operator = (bi);
- while ((state() == IteratorState::valid) &&
+ while ((this->state() == IteratorState::valid) &&
( ! (*predicate)(*this)))
BaseIterator::operator++ ();
set_to_previous_positive (const BaseIterator &bi)
{
BaseIterator::operator = (bi);
- while ((state() == IteratorState::valid) &&
+ while ((this->state() == IteratorState::valid) &&
( ! predicate(*this)))
BaseIterator::operator-- ();
FilteredIterator<BaseIterator>::
operator ++ ()
{
- if (state() == IteratorState::valid)
+ if (this->state() == IteratorState::valid)
do
BaseIterator::operator++ ();
- while ((state() == IteratorState::valid) &&
+ while ((this->state() == IteratorState::valid) &&
!(*predicate) (*this));
return *this;
}
{
const FilteredIterator old_state = *this;
- if (state() == IteratorState::valid)
+ if (this->state() == IteratorState::valid)
do
BaseIterator::operator++ ();
- while ((state() == IteratorState::valid) &&
+ while ((this->state() == IteratorState::valid) &&
!(*predicate) (*this));
return old_state;
}
FilteredIterator<BaseIterator>::
operator -- ()
{
- if (state() == IteratorState::valid)
+ if (this->state() == IteratorState::valid)
do
BaseIterator::operator-- ();
- while ((state() == IteratorState::valid) &&
+ while ((this->state() == IteratorState::valid) &&
!(*predicate) (*this));
return *this;
}
{
const FilteredIterator old_state = *this;
- if (state() == IteratorState::valid)
+ if (this->state() == IteratorState::valid)
do
BaseIterator::operator-- ();
- while ((state() == IteratorState::valid) &&
+ while ((this->state() == IteratorState::valid) &&
!(*predicate) (*this));
return old_state;
}