o
    ߗi                     @   st   U d dl Z d dlmZmZmZ i Zeeeeef f ed< dddZ	deddfdd	Z
ded
edee fddZdS )    N)DictListOptionalcachereturnc                   C   s   t   d S N)r   clear r	   r	   Z/home/ubuntu/transcripts/venv/lib/python3.10/site-packages/torch/_dynamo/funcname_cache.py
clearcache   s   r   filenamec           	      C   sV  zt | }tt |j}W d    n1 sw   Y  W n ty-   i t| < Y d S w i }d}d}g }t|D ]j\}}|jt j	krI|d7 }nT|jt j
krg|d8 }|rf||d krf|  |dd }n6|jt jkr|d t|k r||d  jt jkr|jdks|jdkr|| |r|d7 }|||d  j7 }|||jd < q:|t| < d S )N r      .classdef)tokenizeopenlistgenerate_tokensreadlineOSErrorr   	enumeratetypeINDENTDEDENTpop
rpartitionNAMElenstringappendstart)	r   ftokensresultcur_name
cur_indentsignificant_indentsitokenr	   r	   r
   	_add_file   s@   

r,   linenoc                 C   s    | t vrt|  t |  |d S r   )r   r,   get)r   r-   r	   r	   r
   get_funcname6   s   r/   )r   N)r   typingr   r   r   r   strint__annotations__r   r,   r/   r	   r	   r	   r
   <module>   s   
 
*