3
V'ícq ã @ sV d Z ddlmZmZ ddlmZmZmZmZm Z m
Z
mZmZ dgZ
G dd deZdS )zº
pygments.lexers.zig
~~~~~~~~~~~~~~~~~~~
Lexers for Zig.
:copyright: Copyright 2006-2022 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
é )Ú
RegexLexerÚwords)ÚCommentÚOperatorÚKeywordÚNameÚStringÚNumberÚPunctuationÚ
WhitespaceÚZigLexerc $ @ s| e Zd ZdZdZdZdgZdgZdgZe dyd*d+e
jfZe dzd*d+e
j
fZe d{d*d+e
fZe d|d*d+e
fZe d}d*d+e
fZe d~d*d+e
fZe dd*d+e
fZe dd*d+e
jfZd]efd^efd_ejfeeeeeeeed`ejfdaejfdbejfdcejfddejfdeejfdfejfdgejfdhej fdiefdje!j"fdke!j"fdle!fdme!j#fdne!j#fdoe!dpfdqe$fdre%fgdse!j"fdte!fdue!dvfgdwZ&dxS )r ze
Lexer for the Zig language.
grammar: https://ziglang.org/documentation/master/#Grammar
ZZigzhttp://www.ziglang.orgZzigz*.zigztext/zigÚboolÚf16Úf32Úf64Úf128ÚvoidÚnoreturnÚtypeÚanyerrorÚpromiseÚi0Úu0ÚisizeÚusizeÚcomptime_intÚcomptime_floatÚc_shortÚc_ushortÚc_intÚc_uintÚc_longÚc_ulongÚ
c_longlongÚc_ulonglongÚc_longdoubleÚc_voidi8Úu8Úi16Úu16Úi32Úu32Úi64Úu64Úi128Úu128z\b)ÚsuffixÚconstÚvarÚexternÚpackedÚexportÚpubÚnoaliasÚinlineÚcomptimeÚnakedccÚ stdcallccÚvolatileÚ allowzeroÚalignÚlinksectionÚthreadlocalÚstructÚenumÚunionÚerrorÚbreakÚreturnÚcontinueÚasmÚdeferÚerrdeferÚunreachableÚtryÚcatchÚasyncÚawaitÚsuspendÚresumeÚcancelÚifÚelseÚswitchÚandÚorÚorelseÚwhileÚforÚfnÚusingnamespaceÚtestÚtrueÚfalseÚnullÚ undefinedz\nz\s+z//.*?\nz50x[0-9a-fA-F]+\.[0-9a-fA-F]+([pP][\-+]?[0-9a-fA-F]+)?z'0x[0-9a-fA-F]+\.?[pP][\-+]?[0-9a-fA-F]+z [0-9]+\.[0-9]+([eE][-+]?[0-9]+)?z[0-9]+\.?[eE][-+]?[0-9]+z0b[01]+z0o[0-7]+z0x[0-9a-fA-F]+z[0-9]+z
@[a-zA-Z_]\w*z[a-zA-Z_]\w*z\'\\\'\'zB\'\\(x[a-fA-F0-9]{2}|u[a-fA-F0-9]{4}|U[a-fA-F0-9]{6}|[nr\\t\'"])\'z\'[^\\\']\'z
\\\\[^\n]*zc\\\\[^\n]*zc?"Ústringz[+%=><|^!?/\-*&~:]z
[{}()\[\],.;]z>\\(x[a-fA-F0-9]{2}|u[a-fA-F0-9]{4}|U[a-fA-F0-9]{6}|[nr\\t\'"])z [^\\"\n]+ú"z#pop)Úrootrb N)#r