X-Git-Url: https://wannabe.guru.org/gitweb/?a=blobdiff_plain;f=deferred_operand.py;h=70e9d57392dc0a0b44ba7464cf3be9ee1aa797eb;hb=1220ffcf56e968de31b62f6d0c5af250fed9028e;hp=f2af66c4cc3ee908767af2b024a37bba096ff5d9;hpb=497fb9e21f45ec08e1486abaee6dfa7b20b8a691;p=python_utils.git diff --git a/deferred_operand.py b/deferred_operand.py index f2af66c..70e9d57 100644 --- a/deferred_operand.py +++ b/deferred_operand.py @@ -1,8 +1,15 @@ #!/usr/bin/env python3 +"""This is a helper class that tries to define every __dunder__ method +so as to defer that evaluation of an object as long as possible. It +is used by smart_future.py as a base class.""" + from abc import ABC, abstractmethod from typing import Any, Generic, TypeVar +# This module is commonly used by others in here and should avoid +# taking any unnecessary dependencies back on them. + T = TypeVar('T') @@ -146,7 +153,6 @@ class DeferredOperand(ABC, Generic[T]): def __getattr__(self, method_name): def method(*args, **kwargs): - return getattr(DeferredOperand.resolve(self), method_name)( - *args, **kwargs - ) + return getattr(DeferredOperand.resolve(self), method_name)(*args, **kwargs) + return method