o
    ËÝ2gm  ã                   @  sF   d Z ddlmZ ddlZddlmZ e d¡Zdd	d
„Zddd„Z	dS )z7Contains functions dealing with snake case conversions.é    )ÚannotationsN)ÚAnyz'([a-z0-9](?=[A-Z])|[A-Z](?=[A-Z][a-z]))ÚnameÚstrÚreturnc                 C  s   t  d| ¡ ¡ S )z.Convert ``name`` from camelCase to snake_case.z\1_)Ú_re_camel_to_snakeÚsubÚlower)r   © r
   úG/home/garg/my-data/venv/lib/python3.10/site-packages/praw/util/snake.pyÚcamel_to_snake   s   r   Ú
dictionaryúdict[str, Any]c                 C  s   dd„ |   ¡ D ƒS )zrReturn a new dictionary with keys converted to snake_case.

    :param dictionary: The dict to be corrected.

    c                 S  s   i | ]	\}}t |ƒ|“qS r
   )r   )Ú.0ÚkÚvr
   r
   r   Ú
<dictcomp>   s    z#snake_case_keys.<locals>.<dictcomp>)Úitems)r   r
   r
   r   Úsnake_case_keys   s   r   )r   r   r   r   )r   r   r   r   )
Ú__doc__Ú
__future__r   ÚreÚtypingr   Úcompiler   r   r   r
   r
   r
   r   Ú<module>   s    

