#include "ListParser.ih"
// Custom includes
-#include "../Utils/senfassert.hh"
+#include <senf/Utils/senfassert.hh>
#define prefix_
///////////////////////////////ct.p////////////////////////////////////////
senf::ListParser<ListPolicy>::back()
const
{
- SENF_ASSERT( ! empty() );
+ SENF_ASSERT( ! empty(), "back() called on empty list" );
container c(*this);
typename container::iterator i (c.begin()), j;
typename container::iterator const e (c.end());
senf::ListParser_Container<ListPolicy>::back()
const
{
- SENF_ASSERT( ! empty() );
+ SENF_ASSERT( ! empty(), "back() called on empty list" );
iterator i (begin()), j;
iterator const e (end());
for (j=i; i!=e; j=i, ++i) ;
}
template <class ListPolicy>
-prefix_ void senf::ListParser_Container<ListPolicy>::shift(iterator pos, size_type n)
+prefix_ typename senf::ListParser_Container<ListPolicy>::value_type
+senf::ListParser_Container<ListPolicy>::shift(iterator pos, size_type n)
{
ListPolicy::update(*this);
safe_data_iterator sp (data(),pos.raw());
value_type(sp,state()).init();
ListPolicy::insert(*this,sp);
}
+ return value_type(sp,state());
}
template <class ListPolicy>