
                         ~    S r SSKJr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r\S-   rS rS r " S	 S\5      rg
)z
pygments.lexers.jsonnet
~~~~~~~~~~~~~~~~~~~~~~~

Lexer for Jsonnet data templating language.

:copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
    )include
RegexLexerwords)	CommentKeywordNameNumberOperatorPunctuationStringText
WhitespaceJsonnetLexerz
[^\W\d]\w*z(?=\()c                 d    SR                  U 5      [        4S[        R                  4U [        S4/$ )Nz[^{}\\]z\\.#pop)formatr   Escape
quote_marks    *lib/third_party/pygments/lexers/jsonnet.pystring_rulesr      s5    			:	&/		VV$     c                 D    SR                  U S9[        R                  S4/$ )Nz([^{quote}\\]|\\.)*{quote})quotefield_separator)r   r   Variabler   s    r   quoted_field_namer      s,    	&	-	-J	-	?	)	+ r   c                   x   \ rS rSrSrSrS/rSS/rSr0 SS	\	R                  4S
\R                  4S\	4/_S\" S5      S\4S\4S\S4S\S4S\4S\R                  4S\4S\S4S\S4S\S4S\S4\" / SQSS 9\4S!\4S"\S#4S$\-   \R.                  S%4\\R0                  S%4\\R4                  4S&\4/_S\" S5      _S\" S5      _SS'\4S(\S)4\" S5      /_S\\R0                  S#4\\R4                  4S!\4S*\S+4/_S,S-\4S.\S)4\" S5      /_SS/\4S.\S)4\" S5      /_S#\\R4                  4S0\4S1\S)4S'\4S!\4S-\S24/_S%S0\4S1\S)4S'\4S!\4\" S5      /_SS!\4S\S34S\S44S\S54S6\ S73\S84S9\S)4S\R4                  S:4S\R4                  S;4\" S5      /	_S8\\R0                  S<4\\R4                  S=4/_S:\" S5      _S;\" S5      _S5S(\S=4\" S5      /_S2S>\S)4\" S5      /_S=S!\4S?\S@4\" S5      /_S'\S)4S9\SA4\" S5      /S/\4S'\S)4\" S5      /\\R4                  SB4S!\4/S-\4S'\S)4S9\SA4\" S5      /SC.ErSDrgE)Fr   $   zLexer for Jsonnet source code.Jsonnetjsonnetz	*.jsonnetz*.libsonnetzhttps://jsonnet.org	_commentsz
(//|#).*\nz/\*\*([^/]|/(?!\*))*\*/z/\*([^/]|/(?!\*))*\*/rootz@'.*'z@".*"'singlestring"doublestringz\|\|\|(.|\n)*\|\|\|z[+-]?[0-9]+(.[0-9])?z[!$~+\-&|^=<>*/%]z\{objectz\[arrayzlocal\b
local_namezassert\bassert)r+   elseerrorfalseforifimport	importstrinnull
tailstrictthenselfsupertruez\b)suffixz\s+zfunction(?=\()function_paramszstd\.function_argsz[\.()],z\]r   z(?==))r   local_valuer>   =;:z\(z\)function_param_defaultobject_local_nameobject_assertfield_name_exprz(?=)
field_namez\}double_field_namesingle_field_name)r   r;   r   z	(?=[,\)])z\+?::?:?)r   r   field_valuez#pop:2)r   object_local_value)rJ   rD   rC   rK    N) __name__
__module____qualname____firstlineno____doc__namealiases	filenamesurlr   Singler   Docr   r	   Floatr
   r   r   r   r   jsonnet_function_tokenr   BuiltinFunctionjsonnet_tokenr   r   r   r   tokens__static_attributes__rL   r   r   r   r   $   s   (DkGm,I
C}GNN+'4%w/
} 	K vv6>*6>*#V,$fll3 "8,K*K)<1'8,  	  '	(
 Z ):;..oN#T]]ODDMM*$5
}F 	S)G}H 	S)I}J 	;K(FO
K}T 	#T]]4EFDMM*Z j"9:	
U}` 	8;'FO
a}j 	;;'FO
k}t 	DMM*K K(;Z 856
u}D 	K K(;Z FO
E}R 	Z "56'?3H/0M?!$dL9K(4=="564=="56K 

S}h 	#T]]6 DMM+<=	
i}t 	.s3u}v 	.s3w}x 	H/0FO
y}@ 	!:v.FO#
A}H 	Z +'FGK 
I}T ;'K*FO
 ;;'FO
 DMM+IJZ 

 8;'K*FO	
o}Fr   N)rQ   pygments.lexerr   r   r   pygments.tokenr   r   r   r	   r
   r   r   r   r   __all__r\   rY   r   r   r   rL   r   r   <module>rb      sS    6 5* * * 
&2 D: Dr   