Home / Function/ field_annotation_is_complex() — fastapi Function Reference

field_annotation_is_complex() — fastapi Function Reference

Architecture documentation for the field_annotation_is_complex() function in shared.py from the fastapi codebase.

Function python FastAPI Responses calls 1 called by 1

Entity Profile

Dependency Diagram

graph TD
  e3e32bb4_c2f8_785e_9705_9539ba56c60e["field_annotation_is_complex()"]
  3e898b29_4dd8_c417_2d9b_a84d867423b4["shared.py"]
  e3e32bb4_c2f8_785e_9705_9539ba56c60e -->|defined in| 3e898b29_4dd8_c417_2d9b_a84d867423b4
  935832d6_93ad_1258_7852_84ffec4ea5d4["field_annotation_is_scalar()"]
  935832d6_93ad_1258_7852_84ffec4ea5d4 -->|calls| e3e32bb4_c2f8_785e_9705_9539ba56c60e
  dfada564_89da_782d_9604_dfd9bf49f8ea["_annotation_is_complex()"]
  e3e32bb4_c2f8_785e_9705_9539ba56c60e -->|calls| dfada564_89da_782d_9604_dfd9bf49f8ea
  style e3e32bb4_c2f8_785e_9705_9539ba56c60e fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

fastapi/_compat/shared.py lines 90–103

def field_annotation_is_complex(annotation: Union[type[Any], None]) -> bool:
    origin = get_origin(annotation)
    if origin is Union or origin is UnionType:
        return any(field_annotation_is_complex(arg) for arg in get_args(annotation))

    if origin is Annotated:
        return field_annotation_is_complex(get_args(annotation)[0])

    return (
        _annotation_is_complex(annotation)
        or _annotation_is_complex(origin)
        or hasattr(origin, "__pydantic_core_schema__")
        or hasattr(origin, "__get_pydantic_core_schema__")
    )

Domain

Subdomains

Frequently Asked Questions

What does field_annotation_is_complex() do?
field_annotation_is_complex() is a function in the fastapi codebase, defined in fastapi/_compat/shared.py.
Where is field_annotation_is_complex() defined?
field_annotation_is_complex() is defined in fastapi/_compat/shared.py at line 90.
What does field_annotation_is_complex() call?
field_annotation_is_complex() calls 1 function(s): _annotation_is_complex.
What calls field_annotation_is_complex()?
field_annotation_is_complex() is called by 1 function(s): field_annotation_is_scalar.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free