
    +hG                     N    S SK r S SKrS SKrS SKr " S S\ R                  5      rg)    Nc                   4    \ rS rSrSrS rS rS rS	S jrSr	g)
ReturnNameVisitor   zThanks to ChatGPT for pairing.c                     / U l         g Nreturn_names)selfs    c/home/james-whalen/.local/lib/python3.13/site-packages/diffusers/utils/source_code_parsing_utils.py__init__ReturnNameVisitor.__init__
   s
        c                    [        UR                  [        R                  5      (       a  UR                  R                   Hy  n[        U[        R
                  5      (       a'  U R                  R                  UR                  5        MI   U R                  R                  [        R                  " U5      5        M{     O[        UR                  [        R
                  5      (       a0  U R                  R                  UR                  R                  5        O: U R                  R                  [        R                  " UR                  5      5        U R                  U5        g ! [         a)    U R                  R                  [        U5      5         GMU  f = f! [         a1    U R                  R                  [        UR                  5      5         Nf = fr   )
isinstancevalueastTupleeltsNamer	   appendidunparse	Exceptionstrgeneric_visit)r
   nodeelts      r   visit_ReturnReturnNameVisitor.visit_Return   s5   djj#)),,zzc388,,%%,,SVV4;))00S1AB ' $**chh//!!((7>%%,,S[[-DE 	4  % ;))00S::; ! >%%,,S_=>s$   
/E#9F #.FF8GGc                 j    SSK Jn  SSKJn  [	        X5      (       a  g[	        X5      (       a  g[
        e)Nr   )DiffusionPipeline)
ModelMixin	pipelinesmodels)	diffusersr!   diffusers.models.modeling_utilsr"   
issubclassNotImplementedError)r
   clsr!   r"   s       r   _determine_parent_module*ReturnNameVisitor._determine_parent_module"   s*    />c--((%%r   c                    U R                  U5      n[        R                  " SU 35      n[        XAR                  5      n[
        R                  " [        XR5      5      n[        R                  " U5      n[        R                  " U5      nU$ )Nz
diffusers.)r*   	importlibimport_modulegetattr__name__inspect	getsourcetextwrapdedentr   parse)r
   r)   attribute_nameparent_module_namemain_modulecurrent_cls_modulesource_codetrees           r   get_ast_treeReturnNameVisitor.get_ast_tree-   sr    !::3?--
;M:N.OP$[,,?''0B(STook2yy%r   r   N)encode_prompt)
r0   
__module____qualname____firstlineno____doc__r   r   r*   r<   __static_attributes__ r   r   r   r      s    (!*	&r   r   )r   r-   r1   r3   NodeVisitorr   rD   r   r   <module>rF      s!    
   - -r   