Fixed some errors in the template specialization for std_vector.i on

vectors of "pointer to T".


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5311 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
Logan Johnson 2003-11-12 21:24:55 +00:00
commit 5d9a1c2480

View file

@ -314,7 +314,7 @@ namespace std {
}
public:
vector(unsigned int size = 0);
vector(unsigned int size, const T* value);
vector(unsigned int size, T * &value);
vector(const vector<T*> &);
%rename(__len__) size;
@ -323,7 +323,7 @@ namespace std {
bool empty() const;
void clear();
%rename(push) push_back;
void push_back(const T* x);
void push_back(T* x);
%extend {
T* pop() {
if (self->size() == 0)
@ -340,7 +340,7 @@ namespace std {
else
throw std::out_of_range("vector index out of range");
}
void __setitem__(int i, const T* x) {
void __setitem__(int i, T* x) {
int size = int(self->size());
if (i<0) i+= size;
if (i>=0 && i<size)
@ -350,7 +350,7 @@ namespace std {
}
void each() {
for (unsigned int i=0; i<self->size(); i++) {
T* x = &((*self)[i]);
T* x = (*self)[i];
rb_yield(SWIG_NewPointerObj((void *) x,
$descriptor(T *), 0));
}