
    Ki                    h    U d Z ddlmZ ddlmZmZmZmZmZ ddl	m
Z
 ddlmZ i Zded<   	 	 	 	 dd	Zy
)zEAnnotation-based dependency extraction from ``Annotated`` type hints.    )annotations)	AnnotatedAnyget_args
get_originget_type_hints)Callable   )
Dependencyz:dict[Callable[..., Any], dict[str, list[Dependency[Any]]]]_annotation_cachec                `   | t         v r	t         |    S i }	 t        | d      }|j                         D ]Q  \  }}|dk(  rt	        |      t
        urt        |      dd D cg c]  }t        |t              s| }}|sM|||<   S |t         | <   |S # t        $ r |t         | <   |cY S w xY wc c}w )zBFind ``Dependency`` instances in ``Annotated`` type-hint metadata.T)include_extrasreturnr
   N)	r   r   	Exceptionitemsr   r   r   
isinstancer   )functionresulthintsnamehintadependenciess          d/home/jay/workspace/scripts/.codegraph-venv/lib/python3.12/site-packages/uncalled_for/annotations.pyget_annotation_dependenciesr      s     $$ **/1Fx=
 kkm (
d8d9,#+D>!"#5SaAz9RSS'F4L( #)hM  &,(# Ts   B  B+6B+B('B(N)r   zCallable[..., Any]r   z dict[str, list[Dependency[Any]]])__doc__
__future__r   typingr   r   r   r   r   collections.abcr	   baser   r   __annotations__r        r   <module>r$      s8    K " G G $ PR M R %r#   