void backward_fill(Iterator it, int row, int first, int last){ value_type acc = m_traits.default_value(); --it; for(int i = first - 1; i >= last; --i, --it){ acc = m_traits(*it, acc); m_table[row][i] = acc; } }
void forward_fill(Iterator it, int row, int first, int last){ value_type acc = m_traits.default_value(); m_table[row][first] = acc; for(int i = first + 1; i < last; ++i, ++it){ acc = m_traits(acc, *it); m_table[row][i] = acc; } }