diff options
Diffstat (limited to 'openbb_platform/core/openbb_core/app/model/abstract/singleton.py')
-rw-r--r-- | openbb_platform/core/openbb_core/app/model/abstract/singleton.py | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/openbb_platform/core/openbb_core/app/model/abstract/singleton.py b/openbb_platform/core/openbb_core/app/model/abstract/singleton.py index 7d6bad71a1b..0ecccafc446 100644 --- a/openbb_platform/core/openbb_core/app/model/abstract/singleton.py +++ b/openbb_platform/core/openbb_core/app/model/abstract/singleton.py @@ -1,13 +1,18 @@ +"""Singleton metaclass implementation.""" + from typing import Dict, Generic, TypeVar T = TypeVar("T") class SingletonMeta(type, Generic[T]): + """Singleton metaclass.""" + # TODO : check if we want to update this to be thread safe _instances: Dict[T, T] = {} - def __call__(cls, *args, **kwargs): + def __call__(cls: "SingletonMeta", *args, **kwargs): + """Singleton pattern implementation.""" if cls not in cls._instances: instance = super().__call__(*args, **kwargs) cls._instances[cls] = instance |