/trunk/Lib/python/std_vector.i

# · Swig · 27 lines · 20 code · 4 blank · 3 comment · 0 complexity · ceaf5271782d5054a038ede12f8e23fa MD5 · raw file

  1. /*
  2. Vectors
  3. */
  4. %fragment("StdVectorTraits","header",fragment="StdSequenceTraits")
  5. %{
  6. namespace swig {
  7. template <class T>
  8. struct traits_asptr<std::vector<T> > {
  9. static int asptr(PyObject *obj, std::vector<T> **vec) {
  10. return traits_asptr_stdseq<std::vector<T> >::asptr(obj, vec);
  11. }
  12. };
  13. template <class T>
  14. struct traits_from<std::vector<T> > {
  15. static PyObject *from(const std::vector<T>& vec) {
  16. return traits_from_stdseq<std::vector<T> >::from(vec);
  17. }
  18. };
  19. }
  20. %}
  21. #define %swig_vector_methods(Type...) %swig_sequence_methods(Type)
  22. #define %swig_vector_methods_val(Type...) %swig_sequence_methods_val(Type);
  23. %include <std/std_vector.i>