Source code for xtd.core.mixin

# -*- coding: utf-8
#------------------------------------------------------------------#

__author__    = "Xavier MARCELET <xavier@marcelet.com>"

#------------------------------------------------------------------#

[docs]class Singleton(type): ms_instances = {}
[docs] def __call__(cls, *p_args, **p_kwargs): if cls not in cls.ms_instances: cls.ms_instances[cls] = super(Singleton, cls).__call__(*p_args, **p_kwargs) return cls.ms_instances[cls]
@classmethod
[docs] def reset(mcs, p_item): if p_item in mcs.ms_instances: del mcs.ms_instances[p_item]
#------------------------------------------------------------------#