Wrap a generator to a DataFlow. The dataflow will not have length.
| 94 | |
| 95 | |
| 96 | class DataFromGenerator(DataFlow): |
| 97 | """ |
| 98 | Wrap a generator to a DataFlow. |
| 99 | The dataflow will not have length. |
| 100 | """ |
| 101 | def __init__(self, gen): |
| 102 | """ |
| 103 | Args: |
| 104 | gen: iterable, or a callable that returns an iterable |
| 105 | """ |
| 106 | self._gen = gen |
| 107 | |
| 108 | def __iter__(self): |
| 109 | if not callable(self._gen): |
| 110 | yield from self._gen |
| 111 | else: |
| 112 | yield from self._gen() |
| 113 | |
| 114 | def __len__(self): |
| 115 | return len(self._gen) |
| 116 | |
| 117 | |
| 118 | class DataFromIterable(DataFlow): |
no outgoing calls
no test coverage detected