| 513 | return {field_name: unwrap_optional(hint)[0] for field_name, hint in self._type_hints.items()} |
| 514 | |
| 515 | def _build_missing_field_defaults(self): |
| 516 | if not self.type_resolver.compatible or not self._default_values_factory: |
| 517 | return [] |
| 518 | missing_fields = self._current_class_field_names - self._assigned_field_names |
| 519 | if not missing_fields: |
| 520 | return [] |
| 521 | return [(field_name, default_factory) for field_name, default_factory in self._default_values_factory.items() if field_name in missing_fields] |
| 522 | |
| 523 | def _write_field_value(self, write_context, serializer, field_value, is_nullable, is_dynamic, is_basic, is_tracking_ref): |
| 524 | if is_basic: |