mirror of
https://github.com/jketterl/openwebrx.git
synced 2026-04-20 22:05:13 +00:00
add a flatten implementation
This commit is contained in:
parent
3b04688d1f
commit
701f39f836
2 changed files with 17 additions and 0 deletions
|
|
@ -130,6 +130,11 @@ class ActiveList:
|
|||
self.addListener(ActiveListFilterListener(filter, keyMap, res))
|
||||
return res
|
||||
|
||||
def flatten(self):
|
||||
res = ActiveList([y for x in self for y in x])
|
||||
# TODO handle events
|
||||
return res
|
||||
|
||||
def __setitem__(self, key, value):
|
||||
if self.delegate[key] == value:
|
||||
return
|
||||
|
|
@ -150,3 +155,6 @@ class ActiveList:
|
|||
|
||||
def __iter__(self):
|
||||
return self.delegate.__iter__()
|
||||
|
||||
def __list__(self):
|
||||
return [x for x in self.delegate]
|
||||
|
|
|
|||
|
|
@ -173,3 +173,12 @@ class ActiveListTest(TestCase):
|
|||
filteredList = list.filter(lambda x: x < 3)
|
||||
del list[1]
|
||||
self.assertEqual(len(filteredList), 1)
|
||||
|
||||
def testFlatten(self):
|
||||
list = ActiveList([[1, 2], [3, 4]])
|
||||
flattenedList = list.flatten()
|
||||
self.assertEqual(len(flattenedList), 4)
|
||||
self.assertEqual(flattenedList[0], 1)
|
||||
self.assertEqual(flattenedList[1], 2)
|
||||
self.assertEqual(flattenedList[2], 3)
|
||||
self.assertEqual(flattenedList[3], 4)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue