Added select() function to sequences.

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9742 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
Gonzalo Garramuno 2007-05-01 10:08:24 +00:00
commit eb4817c9ee

View file

@ -632,17 +632,17 @@ namespace swig
return self;
}
%newobject select
%newobject select;
Sequence* select() {
if ( !rb_block_given_p() )
rb_raise( rb_eArgError, "no block given" );
Sequence* r = new Sequence;
Sequence::iterator i = self->begin();
Sequence::iterator e = self->end();
Sequence::const_iterator i = $self->begin();
Sequence::const_iterator e = $self->end();
for ( ; i != e; ++i )
{
VALUE v = swig::from<Sequence::value_type>(*i);
VALUE v = swig::from< Sequence::value_type >(*i);
if ( RTEST( rb_yield(v) ) )
$self->push_back(*i);
}