| /* |
| Vectors |
| */ |
| |
| %fragment("StdVectorTraits","header",fragment="StdSequenceTraits") |
| %{ |
| namespace swig { |
| template <class T> |
| struct traits_reserve<std::vector<T> > { |
| static void reserve(std::vector<T> &seq, typename std::vector<T>::size_type n) { |
| seq.reserve(n); |
| } |
| }; |
| |
| template <class T> |
| struct traits_asptr<std::vector<T> > { |
| static int asptr(PyObject *obj, std::vector<T> **vec) { |
| return traits_asptr_stdseq<std::vector<T> >::asptr(obj, vec); |
| } |
| }; |
| |
| template <class T> |
| struct traits_from<std::vector<T> > { |
| static PyObject *from(const std::vector<T>& vec) { |
| return traits_from_stdseq<std::vector<T> >::from(vec); |
| } |
| }; |
| } |
| %} |
| |
| #define %swig_vector_methods(Type...) %swig_sequence_methods(Type) |
| #define %swig_vector_methods_val(Type...) %swig_sequence_methods_val(Type); |
| |
| %include <std/std_vector.i> |