Author: kkaempf Date: Wed Sep 3 10:53:58 2008 New Revision: 10916 URL: http://svn.opensuse.org/viewcvs/zypp?rev=10916&view=rev Log: add Python iterators for - repo.datas() - all 'repodatas' for a repository - repodata.keys() - all keys defined in a repodata Modified: trunk/sat-solver/bindings/python/tests/repodata.py trunk/sat-solver/bindings/repo.i trunk/sat-solver/bindings/repodata.i Modified: trunk/sat-solver/bindings/python/tests/repodata.py URL: http://svn.opensuse.org/viewcvs/zypp/trunk/sat-solver/bindings/python/tests/repodata.py?rev=10916&r1=10915&r2=10916&view=diff ============================================================================== --- trunk/sat-solver/bindings/python/tests/repodata.py (original) +++ trunk/sat-solver/bindings/python/tests/repodata.py Wed Sep 3 10:53:58 2008 @@ -25,19 +25,20 @@ assert repo.data(-1) == None assert repo.data(repo.datasize()) == None assert repo.data(repo.datasize()-1) - for i in range(0, repo.datasize()): - assert repo.data(i) + for d in repo.datas(): + assert d repodata = repo.data(0) assert repodata print "Repodata is at ", repodata.location(), " with ", repodata.keysize(), " keys" - for i in range(0, repodata.keysize()): - k = repodata.key(i) + for k in repodata.keys(): print " Key ", k.name(), " is ", k.type(), " with ", k.size(), " bytes" + i = 0; for s in repo: print "Solvable %s: group %s, time %s, downloadsize %s, installsize %s" % (s, s.attr('solvable:group'), s.attr('solvable:buildtime'), s.attr('solvable:downloadsize'), s.attr('solvable:installsize')) + i += 1; if i == 10: break Modified: trunk/sat-solver/bindings/repo.i URL: http://svn.opensuse.org/viewcvs/zypp/trunk/sat-solver/bindings/repo.i?rev=10916&r1=10915&r2=10916&view=diff ============================================================================== --- trunk/sat-solver/bindings/repo.i (original) +++ trunk/sat-solver/bindings/repo.i Wed Sep 3 10:53:58 2008 @@ -148,5 +148,13 @@ } } #endif +#if defined(SWIGPYTHON) + %pythoncode %{ + def datas(self): + r = range(0,self.datasize()) + while r: + yield self.data(r.pop(0)) + %} +#endif } Modified: trunk/sat-solver/bindings/repodata.i URL: http://svn.opensuse.org/viewcvs/zypp/trunk/sat-solver/bindings/repodata.i?rev=10916&r1=10915&r2=10916&view=diff ============================================================================== --- trunk/sat-solver/bindings/repodata.i (original) +++ trunk/sat-solver/bindings/repodata.i Wed Sep 3 10:53:58 2008 @@ -38,5 +38,13 @@ } } #endif +#if defined(SWIGPYTHON) + %pythoncode %{ + def keys(self): + r = range(0,self.keysize()) + while r: + yield self.key(r.pop(0)) + %} +#endif } -- To unsubscribe, e-mail: zypp-commit+unsubscribe@opensuse.org For additional commands, e-mail: zypp-commit+help@opensuse.org