Skip to content

Commit 4cae09f

Browse files
authored
refactor: SingleHandlerManager.subscribe
1 parent ba7eb23 commit 4cae09f

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

cq/_core/handler.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -78,14 +78,15 @@ def handlers_from(
7878
yield _make_handle_function(factory)
7979

8080
def subscribe(self, input_type: type[I], factory: HandlerFactory[[I], O]) -> Self:
81-
for key_type in _build_key_types(input_type):
81+
entries = {key_type: factory for key_type in _build_key_types(input_type)}
82+
83+
for key_type in entries:
8284
if key_type in self.__factories:
8385
raise RuntimeError(
8486
f"A handler is already registered for the input type: `{key_type}`."
8587
)
8688

87-
self.__factories[key_type] = factory
88-
89+
self.__factories.update(entries)
8990
return self
9091

9192

0 commit comments

Comments
 (0)