Return a new `FieldInfo` instance from a `dataclasses.Field` instance. Args: dc_field: The `dataclasses.Field` instance to convert. Returns: The corresponding `FieldInfo` instance. Raises: TypeError: If any of the `FieldInfo` kwargs does
(dc_field: DataclassField[Any])
| 641 | |
| 642 | @staticmethod |
| 643 | def _from_dataclass_field(dc_field: DataclassField[Any]) -> FieldInfo: |
| 644 | """Return a new `FieldInfo` instance from a `dataclasses.Field` instance. |
| 645 | |
| 646 | Args: |
| 647 | dc_field: The `dataclasses.Field` instance to convert. |
| 648 | |
| 649 | Returns: |
| 650 | The corresponding `FieldInfo` instance. |
| 651 | |
| 652 | Raises: |
| 653 | TypeError: If any of the `FieldInfo` kwargs does not match the `dataclass.Field` kwargs. |
| 654 | """ |
| 655 | default = dc_field.default |
| 656 | if default is dataclasses.MISSING: |
| 657 | default = _Unset |
| 658 | |
| 659 | if dc_field.default_factory is dataclasses.MISSING: |
| 660 | default_factory = _Unset |
| 661 | else: |
| 662 | default_factory = dc_field.default_factory |
| 663 | |
| 664 | # use the `Field` function so in correct kwargs raise the correct `TypeError` |
| 665 | dc_field_metadata = {k: v for k, v in dc_field.metadata.items() if k in _FIELD_ARG_NAMES} |
| 666 | if sys.version_info >= (3, 14) and dc_field.doc is not None: |
| 667 | dc_field_metadata['description'] = dc_field.doc |
| 668 | return Field(default=default, default_factory=default_factory, repr=dc_field.repr, **dc_field_metadata) # pyright: ignore[reportCallIssue] |
| 669 | |
| 670 | @staticmethod |
| 671 | def _collect_metadata(kwargs: dict[str, Any]) -> list[Any]: |
no test coverage detected