Callable provider¶
Callable provider calls a function, a method or another callable.
importpasslib.hash fromdependency_injectorimport containers, providers classContainer(containers.DeclarativeContainer): password_hasher = providers.Callable( passlib.hash.sha256_crypt.hash, salt_size=16, rounds=10000, ) password_verifier = providers.Callable(passlib.hash.sha256_crypt.verify) if __name__ == "__main__": container = Container() hashed_password = container.password_hasher("super secret") assert container.password_verifier("super secret", hashed_password)
Callable provider handles an injection of the dependencies the same way like a
Factory provider.