118 #include <boost/iterator/iterator_facade.hpp>
133 template <
class StackType,
class TermGeneratorType>
135 public boost::iterator_facade<
136 CTermIter<StackType, TermGeneratorType>,
137 typename TermGeneratorType::value_type,
138 typename StackType::iterator_category,
139 typename TermGeneratorType::result_type
165 typedef typename stack_type::const_reverse_iterator
171 m_getTerm(rhs.m_getTerm), m_stack(rhs.m_stack) {
175 template <
class MgrType>
177 m_getTerm(mgr), m_stack(navi, mgr) {
194 return m_stack.equal(rhs.
m_stack);
199 return m_getTerm(m_stack);
224 assert(!m_stack.empty());
230 return m_stack.navigation();