
    Pi                    `    d Z ddlmZ ddlmZmZ ddlmZ dgZ e	dh          Z
ddZddZdS )zmysql handler for Dippy.    )annotations)ClassificationHandlerContext)is_readonly_sqlmysqlLOADtokens	list[str]return
str | Nonec                   d}|t          |           k     r| |         }|dv r!|dz   t          |           k     r| |dz            S |                    d          rR|t          d          d         }t          |          dk    r&|d         dv r|d         |d         k    r
|dd         }|S |                    d	          rt          |          dk    r
|dd         S |dz  }|t          |           k     dS )
z(Extract SQL from -e or --execute option.r   )-ez	--execute   z
--execute=N   )'"r   )len
startswith)r	   itokenvals       0/root/projects/gits/Dippy/src/dippy/cli/mysql.py_extract_execute_sqlr      s   	A
c&kk//q	'''AECKK,?,?!a%= L)) 	L))++,C3xx1}}Q:!5!5#b'SV:K:K!B$iJD!! 	c%jj1nn9	Q c&kk// 4    ctxr   r   c                J   | j         }t          d |D                       rt          dd          S t          |          }|t          dd          S t	          |t
                    }|du rt          dd	          S |d
u rt          dd          S t          dd          S )Nc              3     K   | ]}|d v V  	dS ))z--helpz-?z	--versionz-VN ).0ts     r   	<genexpr>zclassify.<locals>.<genexpr>'   s(      
D
D133
D
D
D
D
D
Dr   allowzmysql help/version)descriptionaskzmysql (interactive))extra_writeTzmysql (read-only query)Fzmysql (write query)zmysql (unknown query))r	   anyr   r   r   _MYSQL_WRITE)r   r	   sqlreadonlys       r   classifyr+   #   s    ZF 
D
DV
D
D
DDD Ig3GHHHH v
&
&C {e1FGGGG s===H4g3LMMMM5e1FGGGG%-DEEEEr   N)r	   r
   r   r   )r   r   r   r   )__doc__
__future__r   	dippy.clir   r   dippy.core.sqlr   COMMANDS	frozensetr(   r   r+   r   r   r   <module>r2      s      " " " " " " 5 4 4 4 4 4 4 4 * * * * * *9 y&""   (F F F F F Fr   