Exemplo n.º 1
0
 def test_foldr(self):
     summer = op.foldr(operator.add)
     self.assertEqual(10, op.foldr(operator.add)([0, 1, 2, 3, 4]))
     self.assertEqual(20, op.foldr(operator.add, 10)([0, 1, 2, 3, 4]))
     self.assertEqual(20, op.foldr(operator.add, 10)(iters.range(5)))
     # specific case for right-side folding
     self.assertEqual(100, op.foldr(op.call, 0)([lambda s: s ** 2, lambda k: k + 10]))
Exemplo n.º 2
0
 def test_foldr(self):
     summer = op.foldr(operator.add)
     self.assertEqual(10, op.foldr(operator.add)([0,1,2,3,4]))
     self.assertEqual(20, op.foldr(operator.add, 10)([0,1,2,3,4]))
     self.assertEqual(20, op.foldr(operator.add, 10)(iters.range(5)))
     # specific case for right-side folding
     self.assertEqual(100,
                      op.foldr(op.call, 0)([lambda s: s**2, lambda k: k+10]))
Exemplo n.º 3
0
    def from_iterable(it):
        ''' iterable -> LinkedList

        produces LinkedList with the contents of the consumed iterable
        '''
        return foldr(lambda x, y: y.cons(x), LinkedList())(tuple(it))
Exemplo n.º 4
0
    def from_iterable(it):
        ''' iterable -> LinkedList

        produces LinkedList with the contents of the consumed iterable
        '''
        return foldr(lambda x, y: y.cons(x), LinkedList())(tuple(it))
def foldr_dict_vals(f, d):
    return foldr(f)(list(d.values()))