Download autogpt/config/singleton.py from MathysL/AutoGPT4: direct link, hf CLI and curl.
- Browser
- Download file 632 Bytes
-
https://huggingface.co/spaces/MathysL/AutoGPT4/resolve/main/autogpt/config/singleton.py
- Command line
-
hf download hf://spaces/MathysL/AutoGPT4/autogpt/config/singleton.py
-
curl -L -o singleton.py https://huggingface.co/spaces/MathysL/AutoGPT4/resolve/main/autogpt/config/singleton.py
632 Bytes
| """The singleton metaclass for ensuring only one instance of a class.""" | |
| import abc | |
| class Singleton(abc.ABCMeta, type): | |
| """ | |
| Singleton metaclass for ensuring only one instance of a class. | |
| """ | |
| _instances = {} | |
| def __call__(cls, *args, **kwargs): | |
| """Call method for the singleton metaclass.""" | |
| if cls not in cls._instances: | |
| cls._instances[cls] = super(Singleton, cls).__call__(*args, **kwargs) | |
| return cls._instances[cls] | |
| class AbstractSingleton(abc.ABC, metaclass=Singleton): | |
| """ | |
| Abstract singleton class for ensuring only one instance of a class. | |
| """ | |
| pass | |