a
    dP	                     @   s  U d dl Z d dlmZmZ d dlmZ d dlmZmZm	Z	m
Z
 d dlmZ d dlZd dlmZmZ eddd	Zg d
ZddgZejdddd dd ejdddg d ejddddd e jdkrdndZee ed< ejdded ed!e jd"d# ejd$ed%ed!d&d' eD ]tZeeerNeed(  ejd)ed   d*ed(  d+d, n2eeerxee ejd*e d+d, ned-qd.d/ Zd4d0d1Z d2d3 Z!dS )5    N)ArgumentParserFileType)indent)DEBUGINFOWARNERROR)Optional)LarkloggerFz;Look at the Lark documentation for more info on the options)add_helpepilog))ddebugZkeep_all_tokensregexZpropagate_positionsZmaybe_placeholders	use_bytesstartlexerz-vz	--verbosecountz/Increase Logger output level, up to three times)actiondefaulthelpz-sz--startappend)r   r   z-lz--lexer
contextual)basicr   )r   choices)      zutf-8encodingz-oz--outw)r   z the output file (default=stdout))typer   r   grammar_filerzA valid .lark file)r    r      -z--
store_true)r   z4flags must only contain strings or tuples of stringsc                    sf   t ttttft jd  t j	dkr8 j	
d  fddtD }t jfddi| jfS )Nr   r   r   c                    s   i | ]}|t  |qS  )getattr).0n	namespacer&   \/var/www/html/stable-diffusion-webui/venv/lib/python3.9/site-packages/lark/tools/__init__.py
<dictcomp>-       zbuild_lalr.<locals>.<dictcomp>parserZlalr)r   setLevelr   r   r   r   minverboselenr   r   optionsr
   r!   out)r+   kwargsr&   r*   r,   
build_lalr)   s
    r7   c                 C   s\   t | ||||}t|d}|d u r6tj}|d u r6d S z|| W n tyV   Y n0 d S )Nz# )warningsformatwarningr   sysstderrwriteOSError)messagecategoryfilenamelinenofilelinetextr&   r&   r,   showwarning_as_comment1   s    
rE   c                   C   s
   t t_d S )N)rE   r8   showwarningr&   r&   r&   r,   make_warnings_comments?   s    rG   )NN)"r:   argparser   r   textwrapr   loggingr   r   r   r   typingr	   r8   Zlarkr
   r   Zlalr_argparserflagsr4   add_argumentversion_infor   str__annotations__stdoutflag
isinstancetupler   NotImplementedErrorr7   rE   rG   r&   r&   r&   r,   <module>   s4   
	"

