rendered paste body
// This is my object generator:
template<typename TResult, typename TSubject>
inline
typename Iterator<TResult>::Ptr
makeMappingIterator(const typename MappingCallback<TResult, TSubject>::Ptr &mapper,
const typename Iterator<TSubject>::Ptr &source,
const typename DynamicContext::Ptr &context)
{
return typename Iterator<TResult>::Ptr(new MappingIterator<TResult, TSubject>(mapper,
source,
context));
}
// This is what should compile:
Item::Iterator::Ptr Atomizer::evaluateSequence(const DynamicContext::Ptr &context) const
{
return makeMappingIterator(MappingCallback<Item::Ptr, Item::Ptr>::Ptr(const_cast<Atomizer *>(this)),
m_operand->evaluateSequence(context),
context);
}
// This is the error message:
/mnt/data/home/frans/kde/src/kdenonbeta/kdom/xpath/janitors/Atomizer.cpp: In member function 'virtual KDOM::PlainSharedPtr<KXPATH::Iterator<KDOM::PlainSharedPtr<KXPATH::Item> > > KXPATH::Atomizer::evaluateSequence(const KDOM::PlainSharedPtr<KXPATH::DynamicContext>&) const':
/mnt/data/home/frans/kde/src/kdenonbeta/kdom/xpath/janitors/Atomizer.cpp:44: error: no matching function for call to 'makeMappingIterator(KDOM::PlainSharedPtr<KXPATH::MappingCallback<KDOM::PlainSharedPtr<KXPATH::Item>, KDOM::PlainSharedPtr<KXPATH::Item> > >, KDOM::PlainSharedPtr<KXPATH::Iterator<KDOM::PlainSharedPtr<KXPATH::Item> > >, const KDOM::PlainSharedPtr<KXPATH::DynamicContext>&)'
Error creating ../../../kdom/xpath/janitors/Atomizer.lo. Exit status 1.
makeobj[0]: Leaving directory `/mnt/data/home/frans/kde/src/kdenonbeta/kdom/xpath/janitors'
// What's wrong? How do I fix it?