__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

aptanhua@216.73.217.25: ~ $
from greenlet import greenlet

from . import TestCase

class genlet(greenlet):
    parent = None
    def __init__(self, *args, **kwds):
        self.args = args
        self.kwds = kwds

    def run(self):
        fn, = self.fn
        fn(*self.args, **self.kwds)

    def __iter__(self):
        return self

    def __next__(self):
        self.parent = greenlet.getcurrent()
        result = self.switch()
        if self:
            return result

        raise StopIteration

    next = __next__


def Yield(value):
    g = greenlet.getcurrent()
    while not isinstance(g, genlet):
        if g is None:
            raise RuntimeError('yield outside a genlet')
        g = g.parent
    g.parent.switch(value)


def generator(func):
    class Generator(genlet):
        fn = (func,)
    return Generator

# ____________________________________________________________


class GeneratorTests(TestCase):
    def test_generator(self):
        seen = []

        def g(n):
            for i in range(n):
                seen.append(i)
                Yield(i)
        g = generator(g)
        for _ in range(3):
            for j in g(5):
                seen.append(j)
        self.assertEqual(seen, 3 * [0, 0, 1, 1, 2, 2, 3, 3, 4, 4])

Filemanager

Name Type Size Permission Actions
__pycache__ Folder 0755
__init__.py File 9.51 KB 0644
_test_extension.c File 7.07 KB 0644
_test_extension.cpython-312-x86_64-linux-gnu.so File 16.92 KB 0755
_test_extension_cpp.cpp File 6.56 KB 0644
_test_extension_cpp.cpython-312-x86_64-linux-gnu.so File 57.35 KB 0755
fail_clearing_run_switches.py File 1.23 KB 0644
fail_cpp_exception.py File 985 B 0644
fail_initialstub_already_started.py File 1.92 KB 0644
fail_slp_switch.py File 524 B 0644
fail_switch_three_greenlets.py File 956 B 0644
fail_switch_three_greenlets2.py File 1.25 KB 0644
fail_switch_two_greenlets.py File 817 B 0644
leakcheck.py File 12.32 KB 0644
test_contextvars.py File 9.34 KB 0644
test_cpp.py File 3.09 KB 0644
test_extension_interface.py File 4.71 KB 0644
test_gc.py File 2.85 KB 0644
test_generator.py File 1.21 KB 0644
test_generator_nested.py File 3.63 KB 0644
test_greenlet.py File 49.31 KB 0644
test_greenlet_trash.py File 8.17 KB 0644
test_interpreter_shutdown.py File 32.29 KB 0644
test_leaks.py File 18.79 KB 0644
test_stack_saved.py File 446 B 0644
test_throw.py File 3.63 KB 0644
test_tracing.py File 8.35 KB 0644
test_version.py File 1.49 KB 0644
test_weakref.py File 883 B 0644