| 827 | |
| 828 | |
| 829 | class DelayedLeaf(Delayed): |
| 830 | __slots__ = ("_obj", "_pure", "_nout") |
| 831 | |
| 832 | def __init__(self, obj, key, pure=None, nout=None): |
| 833 | super().__init__(key, None, length=nout) |
| 834 | self._obj = obj |
| 835 | self._pure = pure |
| 836 | self._nout = nout |
| 837 | |
| 838 | @property |
| 839 | def dask(self): |
| 840 | if isinstance(self._obj, (TaskRef, GraphNode)): |
| 841 | dsk = {self._key: self._obj} |
| 842 | else: |
| 843 | dsk = {self._key: DataNode(self._key, self._obj)} |
| 844 | return HighLevelGraph.from_collections(self._key, dsk, dependencies=()) |
| 845 | |
| 846 | def __call__(self, *args, **kwargs): |
| 847 | return call_function( |
| 848 | self._obj, self._key, args, kwargs, pure=self._pure, nout=self._nout |
| 849 | ) |
| 850 | |
| 851 | @property |
| 852 | def __name__(self): |
| 853 | return self._obj.__name__ |
| 854 | |
| 855 | @property |
| 856 | def __doc__(self): |
| 857 | return self._obj.__doc__ |
| 858 | |
| 859 | @property |
| 860 | def __wrapped__(self): |
| 861 | return self._obj |
| 862 | |
| 863 | |
| 864 | class DelayedAttr(Delayed): |
no outgoing calls
no test coverage detected
searching dependent graphs…