@@ -244,7 +244,7 @@ impl<'a, Ans: LookupAnswer> AnswersSolver<'a, Ans> {
244244 & self ,
245245 cls : & Class ,
246246 fields : & SmallMap < Name , bool > ,
247- ) -> Option < ClassSynthesizedField > {
247+ ) -> ClassSynthesizedField {
248248 let metadata = FuncMetadata :: def ( self . module ( ) . name ( ) , cls. name ( ) . clone ( ) , UPDATE_METHOD ) ;
249249
250250 let self_param = self . class_self_param ( cls, true ) ;
@@ -320,10 +320,10 @@ impl<'a, Ans: LookupAnswer> AnswersSolver<'a, Ans> {
320320
321321 let signatures = vec1 ! [ partial_overload, tuple_overload, overload_kwargs] ;
322322
323- Some ( ClassSynthesizedField :: new ( Type :: Overload ( Overload {
323+ ClassSynthesizedField :: new ( Type :: Overload ( Overload {
324324 signatures,
325325 metadata : Box :: new ( metadata) ,
326- } ) ) )
326+ } ) )
327327 }
328328
329329 fn get_typed_dict_get (
@@ -589,20 +589,14 @@ impl<'a, Ans: LookupAnswer> AnswersSolver<'a, Ans> {
589589 let mut fields = smallmap ! {
590590 dunder:: INIT => self . get_typed_dict_init( cls, & td. fields) ,
591591 GET_METHOD => self . get_typed_dict_get( cls, & td. fields) ,
592+ UPDATE_METHOD => self . get_typed_dict_update( cls, & td. fields) ,
592593 } ;
593-
594594 if let Some ( m) = self . get_typed_dict_pop ( cls, & td. fields ) {
595595 fields. insert ( POP_METHOD , m) ;
596596 }
597-
598597 if let Some ( m) = self . get_typed_dict_delitem ( cls, & td. fields ) {
599598 fields. insert ( dunder:: DELITEM , m) ;
600599 }
601-
602- if let Some ( m) = self . get_typed_dict_update ( cls, & td. fields ) {
603- fields. insert ( UPDATE_METHOD , m) ;
604- }
605-
606600 if let Some ( m) = self . get_typed_dict_setdefault ( cls, & td. fields ) {
607601 fields. insert ( SETDEFAULT_METHOD , m) ;
608602 }
0 commit comments