summaryrefslogtreecommitdiffstats
path: root/openbb_platform/core/openbb_core/app/model/abstract/singleton.py
diff options
context:
space:
mode:
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.py7
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