pl.sync.run

Iterates over one or more stages until their iterators run out of elements.

import pypeln as pl

data = get_data()
stage = pl.sync.each(slow_fn, data, workers=6)

# execute pipeline
pl.sync.run(stage)

Parameters:

Name Type Description Default
stages Union[pypeln.sync.stage.Stage[~A], Iterable[~A]]

A stage/iterable or list of stages/iterables to be iterated over. If a list is passed, stages are first merged using concat before iterating.

()
maxsize int

This parameter is not used and only kept for API compatibility with the other modules.

0
Source code in pypeln/sync/api/run.py
def run(*stages: tp.Union[Stage[A], tp.Iterable[A]], maxsize: int = 0) -> None:
    """
    Iterates over one or more stages until their iterators run out of elements.

    ```python
    import pypeln as pl

    data = get_data()
    stage = pl.sync.each(slow_fn, data, workers=6)

    # execute pipeline
    pl.sync.run(stage)
    ```

    Arguments:
        stages: A stage/iterable or list of stages/iterables to be iterated over. If a list is passed, stages are first merged using `concat` before iterating.
        maxsize: This parameter is not used and only kept for API compatibility with the other modules.

    """

    if len(stages) == 0:
        return
    elif len(stages) == 1:
        stage = to_iterable(stages[0], maxsize=maxsize)
    else:
        stage = concat(list(stages), maxsize=maxsize)

    for _ in stage:
        pass