
                         h    S r SSKrSSKJrJr  SSKJrJrJrJ	r	J
r
JrJrJrJr  S/r " S S\5      rg)z
pygments.lexers.nix
~~~~~~~~~~~~~~~~~~~

Lexers for the NixOS Nix language.

:copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
    N)
RegexLexerinclude)	TextCommentOperatorKeywordNameStringNumberPunctuationLiteralNixLexerc                      \ rS rSrSrSrSrSS/rS/rS/r	/ S	Qr
/ S
Qr/ SQr/ SQrS\R                  4S\R                   S4S\4SSR%                  S \
 5       5      -  \4SSR%                  S \ 5       5      -  \R*                  4S\R,                  4SSR%                  S \ 5       5      -  \4S\R0                  4SSR%                  S \ 5       5      -  \4S\R6                  4S\R:                  S4S\R                  S4S\4S\4S \4S!\R>                  4S"\4/S#\R                   4S\R                   S$4S%\R                   S&4S'\R                   4/S(\R@                  4S)\R@                  4S*\R@                  4S+\R@                  4S,\R@                  4S\R                  S&4S-\RB                  S.4S/\R                  4S0\R                  4/	S1\R@                  4S2\R@                  4S3\R@                  4S\R:                  S&4S-\RB                  S.4S4\R:                  4/S5\RB                  S&4S-\RB                  S$4\"" S65      /S7.r#S8 r$S9r%g:);r      z.
For the Nix language.

.. versionadded:: 2.0
Nixzhttp://nixos.org/nix/nixosnixz*.nixz
text/x-nix)
recwithletininheritassertifelsethenz...)importabort
baseNameOfdirOfisNullbuiltinsmapremoveAttrsthrowtoString
derivation)z+++?.!z//z==z!=z&&z||z->=)
()[];{}:,@z#.*$z/\*commentz\s+z(%s)|c              #   T   #    U  H  n[         R                  " U5      S -   v   M      g7fz\bNreescape.0entrys     &lib/third_party/pygments/lexers/nix.py	<genexpr>NixLexer.<genexpr>6        NXEryy/%7X   &(c              #   T   #    U  H  n[         R                  " U5      S -   v   M      g7fr:   r;   r>   s     rA   rB   rC   9   rD   rE   z\b(true|false|null)\bc              #   N   #    U  H  n[         R                  " U5      v   M     g 7fNr;   r>   s     rA   rB   rC   ?   s     GYEryy//Y   #%z\b(or|and)\bc              #   N   #    U  H  n[         R                  " U5      v   M     g 7frH   r;   r>   s     rA   rB   rC   F   s     J\Eryy//\rI   z[0-9]+"doublequotez''singlequotez[\w.+-]*(\/[\w.+-]+)+z\<[\w.+-]+(\/[\w.+-]+)*\>z4[a-zA-Z][a-zA-Z0-9\+\-\.]*\:[\w%/?:@&=+$,\\.!~*\'-]+z
[\w-]+\s*=z[a-zA-Z_][\w\'-]*z[^/*]+z#pushz\*/z#popz[*/]z'''z''\$\{z''\nz''\rz''\tz\$\{	antiquotez['$]z[^'$]+z\\z\\"z\\$\{z[^"]z\}root)rO   r7   rM   rL   rN   c                    Sn[         R                  " SU 5      (       a  US-  n[         R                  " SU 5      (       a  US-  n[         R                  " SU 5      (       a  US-  n[         R                  " SU 5      (       a  US-  nU$ )Ng        zimport.+?<[^>]+>g?zmkDerivation\s+(\(|\{|rec)z=\s+mkIf\s+z\{[a-zA-Z,\s]+\}:g?)r<   search)textrvs     rA   analyse_textNixLexer.analyse_text|   sw    99($//#IB992D99#IB99^T**#IB99)400#IB	     N)&__name__
__module____qualname____firstlineno____doc__nameurlaliases	filenames	mimetypeskeywordsr"   	operatorspunctuationsr   Single	Multiliner   joinr   r	   BuiltinConstantr   Wordr   r   Integerr
   Doubler   SymbolEscapeInterpolr   tokensrT   __static_attributes__rW   rV   rA   r   r      s    D
!CG	II'HIH.I FL
 gnn% W&&	2 TN chhNXNNNPWX chhNXNNN\\ &t}}5 chhGYGGG hmm, chhJ\JJJKX ' 6==-0FMM=1 &w/)73 EgN FMM*!4([/
b ))*W&&0W&&/g''(	
 V]]#&fmm$fmm$fmm$FMM6*foo{3fmm$&

 FMM"V]]#v}}%6==&)foo{3fmm$
 FOOV,foow/FO	
UPFdrV   )r\   r<   pygments.lexerr   r   pygments.tokenr   r   r   r   r	   r
   r   r   r   __all__r   rW   rV   rA   <module>ru      s8    
 .! ! ! ,sz srV   