All pastes #40722 Raw Edit

Stuff

public text v1 · immutable
#40722 ·published 2006-02-08 13:53 UTC
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?