Skip to main content

dependencies helper

Project description

dependency helper

Supported Python Versions PyPI version

Dependency helper for properties of python class

$ pip install deps_helper

from deps_helper import Dependencies


class A(deps := Dependencies.new()):
    @deps.register(_for="operation")
    def requested_by(self, user):
        print(f"operation requested by {user}.")

        return f"requested by {user}"

    @deps.register(_for=["check_validity", "operation"])
    def validity(*_):
        ...

    @deps.guard()
    def operation(self):
        print("execute operation...")

    @deps.guard()
    def check_validity(self):
        if self.validity:
            print("Ok")


>>> a = A()
>>> a.check_validity()
Traceback (most recent call last):
...
AttributeError: ("follow attributes are not assigned for check_validity => ", [validity])
>>> a.operation()
Traceback (most recent call last):
...
AttributeError: ("follow attributes are not assigned for operation => ", [requested_by, validity])
>>> a.validity = True
>>> a.check_validity()
Ok
>>> a.requested_by = "admin"
operation requested by admin.
>>> a.operation()
execute operation...
>>> print(a.requested_by)
requested by admin
>>>

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

deps_helper-0.1.6.tar.gz (1.8 kB view hashes)

Uploaded Source

Built Distribution

deps_helper-0.1.6-py3-none-any.whl (1.7 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page