dlt.extract.pipe_iterator
PipeIterator Objects
class PipeIterator(Iterator[PipeItem])
clone_pipes
@staticmethod
def clone_pipes(
pipes: Sequence[Pipe],
existing_cloned_pairs: Dict[str, Pipe] = None
) -> Tuple[List[Pipe], Dict[str, Pipe]]
Clones pipes with their parents and fixes parent instances using pipe instance_id
Pipe with given instance_id
is cloned only once and then reused. This creates
a tree of pipes that requires given pipe to be extracted only once, even if it
has many child pipes that take data from it.
ManagedPipeIterator Objects
class ManagedPipeIterator(PipeIterator)
A version of the pipe iterator that gets closed automatically on an exception in next
set_context
def set_context(ctx: List[ContainerInjectableContext]) -> None
Sets list of injectable contexts that will be injected into Container for each call to next