Add the ability for special variable macros to call other special variable macros. Also added additional diagnostics when using -debug-tmsearch. Add tests for std::vector of shared_ptr.

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12059 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
William S Fulton 2010-05-26 23:22:49 +00:00
commit e2ce97f397
6 changed files with 116 additions and 5 deletions

View file

@ -23,3 +23,28 @@ struct NonDynamic {
boost::shared_ptr<NonDynamic> boing(boost::shared_ptr<NonDynamic> b) { return b; }
%}
// vector of shared_ptr
%include "std_vector.i"
#if defined(SHARED_PTR_WRAPPERS_IMPLEMENTED)
%shared_ptr(IntHolder);
#endif
%inline %{
#include "boost/shared_ptr.hpp"
struct IntHolder {
int val;
IntHolder(int a) : val(a) {}
};
int sum(std::vector< boost::shared_ptr<IntHolder> > v) {
int sum = 0;
for (size_t i=0; i<v.size(); ++i)
sum += v[i]->val;
return sum;
}
%}
%template(VectorIntHolder) std::vector< boost::shared_ptr<IntHolder> >;