for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
import abc
class Singleton(abc.ABCMeta, type):
_instances: dict = {}
def __call__(cls, *args, **kwargs) -> object:
if cls not in cls._instances:
cls._instances[cls] = super().__call__(*args, **kwargs)
return cls._instances[cls]