MCPcopy
hub / github.com/celery/celery / Local

Class Local

celery/utils/threads.py:115–152  ·  view source on GitHub ↗

Local object.

Source from the content-addressed store, hash-verified

113
114
115class Local:
116 """Local object."""
117
118 __slots__ = ('__storage__', '__ident_func__')
119
120 def __init__(self):
121 object.__setattr__(self, '__storage__', {})
122 object.__setattr__(self, '__ident_func__', get_ident)
123
124 def __iter__(self):
125 return iter(self.__storage__.items())
126
127 def __call__(self, proxy):
128 """Create a proxy for a name."""
129 return Proxy(self, proxy)
130
131 def __release_local__(self):
132 self.__storage__.pop(self.__ident_func__(), None)
133
134 def __getattr__(self, name):
135 try:
136 return self.__storage__[self.__ident_func__()][name]
137 except KeyError:
138 raise AttributeError(name)
139
140 def __setattr__(self, name, value):
141 ident = self.__ident_func__()
142 storage = self.__storage__
143 try:
144 storage[ident][name] = value
145 except KeyError:
146 storage[ident] = {name: value}
147
148 def __delattr__(self, name):
149 try:
150 del self.__storage__[self.__ident_func__()][name]
151 except KeyError:
152 raise AttributeError(name)
153
154
155class _LocalStack:

Callers 3

test_iterMethod · 0.90
test_initMethod · 0.90
__init__Method · 0.85

Calls

no outgoing calls

Tested by 2

test_iterMethod · 0.72
test_initMethod · 0.72