blob: b0b4928e41187e0dd30364c3b580ce966554bcf8 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
/*
Lists
*/
%fragment("StdListTraits","header",fragment="StdSequenceTraits")
%{
namespace swig {
template <class T >
struct traits_asptr<std::list<T> > {
static int asptr(VALUE obj, std::list<T> **lis) {
return traits_asptr_stdseq<std::list<T> >::asptr(obj, lis);
}
};
template <class T>
struct traits_from<std::list<T> > {
static VALUE from(const std::list<T>& vec) {
return traits_from_stdseq<std::list<T> >::from(vec);
}
};
}
%}
%ignore std::list::push_back;
%ignore std::list::pop_back;
#define %swig_list_methods(Type...) %swig_sequence_methods(Type)
#define %swig_list_methods_val(Type...) %swig_sequence_methods_val(Type);
%mixin std::list "Enumerable";
%rename("delete") std::list::__delete__;
%rename("reject!") std::list::reject_bang;
%rename("map!") std::list::map_bang;
%rename("empty?") std::list::empty;
%rename("include?" ) std::list::__contains__ const;
%rename("has_key?" ) std::list::has_key const;
%alias std::list::push "<<";
%include <std/std_list.i>
|