
    Pi5                        d Z ddlmZ ddlmZmZ dgZ eh d          Z eh d          Z	 eh d          Z
h dd	d
hdZh dh dh ddZddZddZdS )z!
Homebrew CLI handler for Dippy.
    )annotations)ClassificationHandlerContextbrew>   -S-vtap-info	--versiondrlscatlogdepsdescdocshelphomeinfolistusescasksfetchconfigdoctorleavessearchmissingoptionscommandsformulaehomepageoutdatedshellenv>	   --env--repo--taps--cache--cellar--config--prefix
--caskroom--repository>   rmpintapcasklinkunpinuntapbundleremoveunlinkupdatecleanupinstallupgradeservices	uninstall
autoremove>   r   r   r   r   r"   checkr   )r0   r4   >   zapr9   r:   r<   >   runstopstartr8   restart>   dumpexecr8   r9   )r0   r;   r4   ctxr   returnr   c                `   | j         }|r|d         nd}t          |          dk     rt          d|          S |d         }t          |          dk    r
|dd         ng }| d| }|t          v rt          d	|          S |t          v r6|r4t          |          }|t          |         v rt          d	| d|           S |t          v rM|rKt          |          }|t          |         v rt          d| d|           S |d
k    rt          d|          S |d
k    rt          d|          S |dk    rt          d|          S |dk    r<|r)t          |          }|dv rt          d| d|           S t          d	|          S |t          v rt          d	|          S t          d|          S )zClassify brew command.r   r      ask)description   N allowr;   r4   	analytics>   onoff)tokenslenr   SAFE_GLOBAL_FLAGSSAFE_SUBCOMMANDS_find_subcommandUNSAFE_SUBCOMMANDSSAFE_ACTIONS)rF   rR   baseactionrestr   
subcommands          //root/projects/gits/Dippy/src/dippy/cli/brew.pyclassifyr^   k   s(   ZF*6!99FD
6{{Qe6666AYFVq6!""::bDVD """g48888 !!!d!%d++
)&111!'$7M7M7M7MNNNN####%d++
+F333!%5K5Kz5K5KLLLLZ!%T::::e6666e6666  	Q)$//J]**%eD9O9O:9O9OPPPPg48888g48888%T2222    r[   	list[str]
str | Nonec                B    | D ]}|                     d          s|c S dS )z/Find the first non-flag token (the subcommand).-N)
startswith)r[   tokens     r]   rV   rV      s:      $$ 	LLL	4r_   N)rF   r   rG   r   )r[   r`   rG   ra   )__doc__
__future__r   	dippy.clir   r   COMMANDS	frozensetrX   rT   UNSAFE_ACTIONSrU   rW   r^   rV    r_   r]   <module>rm      s'    # " " " " " 4 4 4 4 4 4 4 48 y# # #% %R I
 
 
       2 ;::   766>>>444  -3 -3 -3 -3`     r_   