A _DrainingTube is an ITube that unbuffers a list of items. It is an implementation detail of the way that Diverter works.

Method __init__ Create a _DrainingTube with some items to drain, a drain to drain them to, and a fount to flow to that drain once the items are flowed.
Method __repr__ Display the remaining items to be drained.
Method started Yield each item from the items passed to the constructor, then switch flow to _eventualUpstream.
def __init__(self, items, eventualUpstream, eventualDownstream):

Create a _DrainingTube with some items to drain, a drain to drain them to, and a fount to flow to that drain once the items are flowed.

ParametersitemsAn iterable of items to drain. (type: iterable)
eventualUpstreama fount which should flow to eventualDownstream once the last item in items has been passed on.
eventualDownstreama drain which should receive each item in items and then accept the flow from eventualUpstream.
def __repr__(self):

Display the remaining items to be drained.

def started(self):

Yield each item from the items passed to the constructor, then switch flow to _eventualUpstream.

API Documentation for tubes, generated by pydoctor at 2016-01-18 07:46:47.