Author: kkaempf Date: Thu Dec 4 13:04:37 2008 New Revision: 11860 URL: http://svn.opensuse.org/viewcvs/zypp?rev=11860&view=rev Log: Ruby enhancements - mixin Enumerable - pool.search() Modified: trunk/sat-solver/bindings/pool.i Modified: trunk/sat-solver/bindings/pool.i URL: http://svn.opensuse.org/viewcvs/zypp/trunk/sat-solver/bindings/pool.i?rev=11860&r1=11859&r2=11860&view=diff ============================================================================== --- trunk/sat-solver/bindings/pool.i (original) +++ trunk/sat-solver/bindings/pool.i Thu Dec 4 13:04:37 2008 @@ -35,6 +35,10 @@ typedef struct _Pool {} Pool; %rename(Pool) _Pool; +#if defined(SWIGRUBY) +%mixin Pool "Enumerable"; +#endif + %extend Pool { /* @@ -364,6 +368,18 @@ %} #endif +#if defined(SWIGRUBY) + void search(const char *match, int flags, XSolvable *xs = NULL, const char *keyname = NULL) + { + Dataiterator *di; + di = swig_dataiterator_new($self, NULL, match, flags, xs, keyname); + while( dataiterator_step(di) ) { + rb_yield(SWIG_NewPointerObj((void*) di, SWIGTYPE_p__Dataiterator, 0)); + } + swig_dataiterator_free(di); + } +#endif + /************************** * Transaction management */ -- To unsubscribe, e-mail: zypp-commit+unsubscribe@opensuse.org For additional commands, e-mail: zypp-commit+help@opensuse.org