(
cls,
v: Any,
to_dict: bool,
by_alias: bool,
include: Optional[Union['AbstractSetIntStr', 'MappingIntStrAny']],
exclude: Optional[Union['AbstractSetIntStr', 'MappingIntStrAny']],
exclude_unset: bool,
exclude_defaults: bool,
exclude_none: bool,
)
| 750 | @classmethod |
| 751 | @no_type_check |
| 752 | def _get_value( |
| 753 | cls, |
| 754 | v: Any, |
| 755 | to_dict: bool, |
| 756 | by_alias: bool, |
| 757 | include: Optional[Union['AbstractSetIntStr', 'MappingIntStrAny']], |
| 758 | exclude: Optional[Union['AbstractSetIntStr', 'MappingIntStrAny']], |
| 759 | exclude_unset: bool, |
| 760 | exclude_defaults: bool, |
| 761 | exclude_none: bool, |
| 762 | ) -> Any: |
| 763 | if isinstance(v, BaseModel): |
| 764 | if to_dict: |
| 765 | v_dict = v.dict( |
| 766 | by_alias=by_alias, |
| 767 | exclude_unset=exclude_unset, |
| 768 | exclude_defaults=exclude_defaults, |
| 769 | include=include, |
| 770 | exclude=exclude, |
| 771 | exclude_none=exclude_none, |
| 772 | ) |
| 773 | if ROOT_KEY in v_dict: |
| 774 | return v_dict[ROOT_KEY] |
| 775 | return v_dict |
| 776 | else: |
| 777 | return v.copy(include=include, exclude=exclude) |
| 778 | |
| 779 | value_exclude = ValueItems(v, exclude) if exclude else None |
| 780 | value_include = ValueItems(v, include) if include else None |
| 781 | |
| 782 | if isinstance(v, dict): |
| 783 | return { |
| 784 | k_: cls._get_value( |
| 785 | v_, |
| 786 | to_dict=to_dict, |
| 787 | by_alias=by_alias, |
| 788 | exclude_unset=exclude_unset, |
| 789 | exclude_defaults=exclude_defaults, |
| 790 | include=value_include and value_include.for_element(k_), |
| 791 | exclude=value_exclude and value_exclude.for_element(k_), |
| 792 | exclude_none=exclude_none, |
| 793 | ) |
| 794 | for k_, v_ in v.items() |
| 795 | if (not value_exclude or not value_exclude.is_excluded(k_)) |
| 796 | and (not value_include or value_include.is_included(k_)) |
| 797 | } |
| 798 | |
| 799 | elif sequence_like(v): |
| 800 | seq_args = ( |
| 801 | cls._get_value( |
| 802 | v_, |
| 803 | to_dict=to_dict, |
| 804 | by_alias=by_alias, |
| 805 | exclude_unset=exclude_unset, |
| 806 | exclude_defaults=exclude_defaults, |
| 807 | include=value_include and value_include.for_element(i), |
| 808 | exclude=value_exclude and value_exclude.for_element(i), |
| 809 | exclude_none=exclude_none, |
no test coverage detected