
    wi	                        d dl mZ d dlZd dlZd dlZd dlmZ d dlmZ d dlm	Z	 d dl
mZ d dl
mZ d dl
mZ d d	lmZ d d
lmZ dZe	j        Ze	j        Ze	j        ZddZddZej        dd            ZddZdS )    )annotationsN)	Generator)Sequence)	lang_base)
envcontext)PatchesT)Var)Prefix)
cmd_outputlua_envreturnstrc                 T    t          ddd          \  } }} |                                S )z'Get the Lua version used in file paths.luarocksconfigz	--lua-ver)r   strip)_stdouts     h/root/.openclaw/workspace/chatterbox_venv_py311/lib/python3.11/site-packages/pre_commit/languages/lua.py_get_lua_versionr      s'    j(K@@LAvq<<>>    dr   c                   t                      }t          j        dk    rdnd}dt          j                            | d          t          j        t          d          ffdt          j                            | dd|d	          t          j                            | dd|d
d          ffdt          j                            | dd|d| d          fffS )Nwin32dllsoPATHbinLUA_PATHshareluaz?.lua;?z
init.lua;;	LUA_CPATHlibz?.z;;)r   sysplatformospathjoinpathsepr	   )r   versionso_exts      r   get_env_patchr-      s      Glg--UU4F	"',,q%(("*c&kkBCQBBQlKK	
 W\\!UE7OOOODDF	
 r   prefixr
   r+   Generator[None]c              #     K   t          j        | t          |          }t          t	          |                    5  d V  d d d            d S # 1 swxY w Y   d S )N)r   environment_dirENVIRONMENT_DIRr   r-   )r.   r+   envdirs      r   in_envr4   .   s      &vHHF	M&))	*	*                   s   AAAadditional_dependenciesSequence[str]Nonec                   t          j        d|           t          j        | t          |          }t	          | |          5  t          j        |d           |                     d          D ]}dd|d|f}t          j        | |           |D ]}dd|d|f}t          j        | |           	 d d d            d S # 1 swxY w Y   d S )	Nr!   T)exist_okz	.rockspecr   z--treemakeinstall)	r   assert_version_defaultr1   r2   r4   r'   makedirsstar	setup_cmd)r.   r+   r5   r3   rockspecmake_cmd
dependencycmds           r   install_environmentrD   5   s5   
 $UG444&vHHF		 	  - - 	FT**** K00 	2 	2H"HffhGH1111 2 	- 	-JxJGC,,,,	-- - - - - - - - - - - - - - - - - -s   A,B;;B?B?)r   r   )r   r   r   r   )r.   r
   r+   r   r   r/   )r.   r
   r+   r   r5   r6   r   r7   )
__future__r   
contextlibr'   r%   collections.abcr   r   
pre_commitr   pre_commit.envcontextr   r   r	   pre_commit.prefixr
   pre_commit.utilr   r2   basic_get_default_versionget_default_versionbasic_health_checkhealth_checkbasic_run_hookrun_hookr   r-   contextmanagerr4   rD    r   r   <module>rT      sM   " " " " " "     				 



 % % % % % % $ $ $ $ $ $             , , , , , , * * * * * * % % % % % % $ $ $ $ $ $ & & & & & &9 +#      $    - - - - - -r   