Apply refactoring #199

This commit is contained in:
Roman Mogylatov 2018-07-26 10:22:43 +03:00
parent 461c546d31
commit 18393eb9ed
4 changed files with 4686 additions and 5226 deletions

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -10,7 +10,6 @@ cimport cython
cdef class Provider(object): cdef class Provider(object):
cdef tuple __overridden cdef tuple __overridden
cdef Provider __last_overriding cdef Provider __last_overriding
cdef object __overriding_lock
cpdef object _provide(self, tuple args, dict kwargs) cpdef object _provide(self, tuple args, dict kwargs)
cpdef void _copy_overridings(self, Provider copied, dict memo) cpdef void _copy_overridings(self, Provider copied, dict memo)

View File

@ -87,7 +87,6 @@ cdef class Provider(object):
"""Initializer.""" """Initializer."""
self.__overridden = tuple() self.__overridden = tuple()
self.__last_overriding = None self.__last_overriding = None
self.__overriding_lock = self.__class__.overriding_lock
super(Provider, self).__init__() super(Provider, self).__init__()
def __call__(self, *args, **kwargs): def __call__(self, *args, **kwargs):
@ -128,7 +127,7 @@ cdef class Provider(object):
@property @property
def overridden(self): def overridden(self):
"""Return tuple of overriding providers.""" """Return tuple of overriding providers."""
with self.__overriding_lock: with self.overriding_lock:
return self.__overridden return self.__overridden
@property @property
@ -157,7 +156,7 @@ cdef class Provider(object):
if not is_provider(provider): if not is_provider(provider):
provider = Object(provider) provider = Object(provider)
with self.__overriding_lock: with self.overriding_lock:
self.__overridden += (provider,) self.__overridden += (provider,)
self.__last_overriding = provider self.__last_overriding = provider
@ -171,7 +170,7 @@ cdef class Provider(object):
:rtype: None :rtype: None
""" """
with self.__overriding_lock: with self.overriding_lock:
if len(self.__overridden) == 0: if len(self.__overridden) == 0:
raise Error('Provider {0} is not overridden'.format(str(self))) raise Error('Provider {0} is not overridden'.format(str(self)))
@ -186,7 +185,7 @@ cdef class Provider(object):
:rtype: None :rtype: None
""" """
with self.__overriding_lock: with self.overriding_lock:
self.__overridden = tuple() self.__overridden = tuple()
self.__last_overriding = None self.__last_overriding = None