python: Allow iterating over CModules

Closes #137
This commit is contained in:
Kyle Fuller
2012-02-28 18:05:49 +00:00
parent f4c2f911ae
commit 9d7c0d050b
2 changed files with 37 additions and 0 deletions

View File

@@ -647,3 +647,17 @@ def CreateWebSubPage(name, title='', params=dict(), admin=False):
CUser.GetNetworks = CUser.GetNetworks_
CIRCNetwork.GetChans = CIRCNetwork.GetChans_
CChan.GetNicks = CChan.GetNicks_
class ModulesIter(collections.Iterator):
def __init__(self, cmod):
self._cmod = cmod
def __next__(self):
if self._cmod.is_end():
raise StopIteration
module = self._cmod.get()
self._cmod.plusplus()
return module
CModules.__iter__ = lambda cmod: ModulesIter(CModulesIter(cmod))