
    i                     t    d Z ddlmZmZmZmZmZ ddlmZm	Z	m
Z
mZmZmZmZmZmZ dgZ G d de          ZdS )z
    pygments.lexers.devicetree
    ~~~~~~~~~~~~~~~~~~~~~~~~~~

    Lexers for Devicetree language.

    :copyright: Copyright 2006-present by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    )
RegexLexerbygroupsincludedefaultwords)	CommentKeywordNameNumberOperatorPunctuationStringText
WhitespaceDevicetreeLexerc                      e Zd ZdZdZdZddgZddgZdgZd	Z	d
Z
de
z   dz    eej        ej        ej                  fde
z   dz    eej        ej        ej                  fde
z   dz    eej        ej        ej                  fde
z   dz    eej        ej        ej        e          fgdefdefdefdej        fdej        fdej        fgd eej        e          dfdej        fdej        fd eej        ee          df edd          ej        fd efd!efd"ed#fd$e
z   d%z   e
z   d&z   efd'ej        fg
 e d(           e d)          d*e
z   d+z    eeej!        eej"        eej        e          d,fd-e
z   d+z    eej!        eej        ej        e          d,f e#d.          g e d(           e d/          d0edfg e d(           e d)          d*e
z   d+z    eeej!        eej"        eej        e          d1fd-e
z   d+z    eej!        eej        ej        e          d1f e d/          d2edfd0efgd3edfd4ej$        fd5efdefd6efgd7edfd8ej        fdefgd9Z%d:S );r   z%
    Lexer for Devicetree files.
    
Devicetreezhttps://www.devicetree.org/
devicetreedtsz*.dtsz*.dtsiztext/x-cz2.7z\s*(?:/[*][^*/]*?[*]/\s*)*z(#include)(z	)([^\n]+)z
(#define)(z(/[^*/{]+/)(z)("[^\n{]+")z)([^\n;{]*)([;]?)z\nz\s+z\\\nz//(\n|[\w\W]*?[^\\]\n)z/(\\\n)?[*][\w\W]*?[*](\\\n)?/z/(\\\n)?[*][\w\W]*z(L?)(")stringz0x[0-9a-fA-F]+z\d+z([^\s{}/*]*)(\s*)(:)z#pop)
compatiblemodelphandlestatusz#address-cellsz#size-cellsregzvirtual-regrangesz
dma-rangesdevice_typenamez\b)suffixz([~!%^&*+=|?:<>/#-])z
[(){},.\]]z\[
bytestringz[a-zA-Z_][\w-]*(?=(?:\s*,z[a-zA-Z_][\w-]*)*z[=;])z[a-zA-Z_]\w*
whitespacemacroz&(&)(?:([A-Za-z_]\w*)|(\{)([^}]+)(\}))(z)(\{)nodez)([^/*@\s&]+|/)(@?)((?:0x)?[0-9a-fA-F,]*)(	statement
statements;z#pushz\};"zO\\([\\abfnrtv"\']|x[a-fA-F0-9]{2,4}|u[a-fA-F0-9]{4}|U[a-fA-F0-9]{8}|[0-7]{1,3})z	[^\\"\n]+z\\z\]z[0-9a-fA-F]{2})r"   r!   r%   rootr$   r#   r   r    N)&__name__
__module____qualname____doc__r   urlaliases	filenames	mimetypesversion_added_wsr   r   Preproc	MultilinePreprocFiler   r   r   Singler   Affixr   HexIntegerr
   Labelr   r	   Reservedr   	Attributer   Function	Namespacer   Escapetokens     W/root/projects/qq-shell/venv/lib/python3.11/site-packages/pygments/lexers/devicetree.pyr   r      s         D
'CU#G(#IIM (C
 c!L0Xgow'8':MNNP S </Xgow'8'/JJL s"_4Xgow'8':MNNP s"%99Xgow'8'/;WWY
 JZ dO&7.0AB"G$56
 &,77B
+V^$$hhtz4&M&MvVU +38: : :;B;KM %h/K(K.)C/2FFLxWdn-
  GL!!GG6<xGXh{DN!7#4kC CDJL :C?(JXdmXv~'6 67=? GK  
 GL!!GL!!+v&
 GL!!GG6<xGXh{DN!7#4kC CDKM :C?(JXdmXv~'6 67>@ GL!![&)+
" 66"<=C]L6"fFO
 K(
+Z 
eW WFFFrB   N)r,   pygments.lexerr   r   r   r   r   pygments.tokenr   r	   r
   r   r   r   r   r   r   __all__r   rA   rB   rC   <module>rG      s     I H H H H H H H H H H H H H* * * * * * * * * * * * * * * * * * * * * * 
f f f f fj f f f f frB   