
    Pi
                    |    d Z ddlmZ ddlmZmZ ddlmZ dgZ e	h d          Z
 e	h d          ZddZddZdS )z%sqlcmd (go-sqlcmd) handler for Dippy.    )annotations)ClassificationHandlerContext)is_readonly_sqlsqlcmd>   helpopenconfig
completion>   stopstartcreatedeleteinstalltokens	list[str]return
str | Nonec                :   	 |                      d          }n# t          $ r Y dS w xY w|dz   }|t          |           k     rZ| |         }|dv r!|dz   t          |           k     r| |dz            S |dv r||dv rdndz  }P|                    d          r|dz  }k|S dS )	z"Extract SQL from query subcommand.queryN   )z-qz--queryz-tz--text)-d
--database-h--help)r   r      -)index
ValueErrorlen
startswith)r   	query_idxitokens       1/root/projects/gits/Dippy/src/dippy/cli/sqlcmd.py_extract_query_sqlr&      s    LL))		   tt 	AA
c&kk//q	555!a%#f++:M:M!a%= 888e333:AC   	FA4s    
&&ctxr   r   c                Z   | j         }t          d |D                       rt          dd          S d }|dd          D ]}|                    d          s|} n|t          dd          S |t          v rt          dd	|           S |t
          v rt          dd	|           S |d
k    rlt          |          }|t          dd          S t          |          }|du rt          dd          S |du rt          dd          S t          dd          S t          dd	|           S )Nc              3     K   | ]}|d v V  	dS ))r   r   z	--versionN ).0ts     r%   	<genexpr>zclassify.<locals>.<genexpr>/   s(      
>
>!1--
>
>
>
>
>
>    allowzsqlcmd help/version)descriptionr   r   askzsqlcmd (no subcommand)zsqlcmd r   zsqlcmd query (no SQL)Tzsqlcmd query (read-only)Fzsqlcmd query (write)zsqlcmd query (unknown))r   anyr   r!   _SAFE_SUBCOMMANDS_UNSAFE_SUBCOMMANDSr&   r   )r'   r   
subcommandr$   sqlreadonlys         r%   classifyr8   +   s   ZF 
>
>v
>
>
>>> Jg3HIIII J  $$ 	JE	 e1IJJJJ &&&g3IZ3I3IJJJJ (((e1G:1G1GHHHH W ((;!%5LMMMM"3''t!'7QRRRRu!%5KLLLLe1IJJJJ %-Cz-C-CDDDDr.   N)r   r   r   r   )r'   r   r   r   )__doc__
__future__r   	dippy.clir   r   dippy.core.sqlr   COMMANDS	frozensetr3   r4   r&   r8   r*   r.   r%   <module>r?      s    + + " " " " " " 4 4 4 4 4 4 4 4 * * * * * *: IFFFGG   i P P PQQ    4'E 'E 'E 'E 'E 'Er.   