示例#1
0
async def async_select_or_reject(args, kwargs, modfunc, lookup_attr):
    seq, func = filters.prepare_select_or_reject(args, kwargs, modfunc,
                                                 lookup_attr)
    if seq:
        async for item in auto_aiter(seq):
            if func(item):
                yield item
示例#2
0
async def async_select_or_reject(args, kwargs, modfunc, lookup_attr):
    seq, func = filters.prepare_select_or_reject(
        args, kwargs, modfunc, lookup_attr)
    if seq:
        async for item in auto_aiter(seq):
            if func(item):
                yield item
示例#3
0
 async def customfilter(iterable):
     items = []
     async for item in auto_aiter(iterable):
         items.append(str(item))
         if len(items) == 3:
             break
     return ",".join(items)
示例#4
0
async def do_sum(environment, iterable, attribute=None, start=0):
    rv = start
    if attribute is not None:
        func = filters.make_attrgetter(environment, attribute)
    else:
        func = lambda x: x
    async for item in auto_aiter(iterable):
        rv += func(item)
    return rv
示例#5
0
async def do_sum(environment, iterable, attribute=None, start=0):
    rv = start
    if attribute is not None:
        func = filters.make_attrgetter(environment, attribute)
    else:
        func = lambda x: x
    async for item in auto_aiter(iterable):
        rv += func(item)
    return rv
示例#6
0
async def do_map(*args, **kwargs):
    seq, func = filters.prepare_map(args, kwargs)
    if seq:
        async for item in auto_aiter(seq):
            yield func(item)
示例#7
0
async def do_map(*args, **kwargs):
    seq, func = filters.prepare_map(args, kwargs)
    if seq:
        async for item in auto_aiter(seq):
            yield await auto_await(func(item))
示例#8
0
def test_async_iteration_in_templates_extended():
    t = Template("{% for x in rng %}{{ loop.index0 }}/{{ x }}{% endfor %}",
                 enable_async=True)
    stream = t.generate(rng=auto_aiter(range(1, 4)))
    assert next(stream) == "0"
    assert "".join(stream) == "/11/22/3"