return *this;
}
- inline Self operator+(int Right) {
+ inline Self operator+(int Right) const {
Self tmp = *this;
tmp += Right;
return tmp;
return operator+=(-Right);
}
- inline Self operator-(int Right) {
+ inline Self operator-(int Right) const {
return operator+(-Right);
}
- inline int operator-(const Self& x) {
+ inline int operator-(const Self& x) const {
assert(Term == x.Term && "Cannot work on iterators of different blocks!");
int distance = idx - x.idx;
return distance;