Source code for cobra.core.singleton

"""Define the singleton meta class."""


[docs]class Singleton(type): """Implementation of the singleton pattern as a meta class."""
[docs] _instances = {}
[docs] def __call__(cls, *args, **kwargs): """Override an inheriting class' call.""" if cls not in cls._instances: cls._instances[cls] = super(Singleton, cls).__call__(*args, **kwargs) return cls._instances[cls]