]> git.ipfire.org Git - thirdparty/fastapi/fastapi.git/commitdiff
⚡ Simplify and improve jsonable_encoder (#1754)
authorNima Mashhadi M. Reza <49960770+MashhadiNima@users.noreply.github.com>
Mon, 3 Aug 2020 13:30:23 +0000 (18:00 +0430)
committerGitHub <noreply@github.com>
Mon, 3 Aug 2020 13:30:23 +0000 (15:30 +0200)
Co-authored-by: nimashadix <nimashadix@pop-os.localdomain>
fastapi/encoders.py

index 003dd58cef1c1e96f75a289ffebd6b9a4cac1fa0..a1b68829aefdc0264af6ab16816c41e66be0d9ec 100644 (file)
@@ -16,12 +16,9 @@ DictIntStrAny = Dict[Union[int, str], Any]
 def generate_encoders_by_class_tuples(
     type_encoder_map: Dict[Any, Callable]
 ) -> Dict[Callable, Tuple]:
-    encoders_by_classes: Dict[Callable, List] = defaultdict(list)
+    encoders_by_class_tuples: Dict[Callable, Tuple] = defaultdict(tuple)
     for type_, encoder in type_encoder_map.items():
-        encoders_by_classes[encoder].append(type_)
-    encoders_by_class_tuples: Dict[Callable, Tuple] = {}
-    for encoder, classes in encoders_by_classes.items():
-        encoders_by_class_tuples[encoder] = tuple(classes)
+        encoders_by_class_tuples[encoder] += (type_,)
     return encoders_by_class_tuples