File: //opt/alt/python311/lib/python3.11/site-packages/pygments/lexers/__pycache__/bare.cpython-311.pyc
�
�;f� � �` � d Z ddlmZmZmZ ddlmZmZmZm Z m
Z
mZ dgZ G d� de� � Z
dS )z�
pygments.lexers.bare
~~~~~~~~~~~~~~~~~~~~
Lexer for the BARE schema.
:copyright: Copyright 2006-2024 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
� )�
RegexLexer�words�bygroups)�Text�Comment�Keyword�Name�Literal�
Whitespace� BareLexerc � � e Zd ZdZdZdZdgZdgZdZg d�Z d e
eee
j ee� � d fd
e
eee
j ee� � dfd e
eee
e� � d
fd e
eee
j e� � dfdefdefgdedfdedfd e
e
j ee� � d
fdefgdedfd e
eee� � fde
j f ee � � efdefgdefdedfd e
eee� � fdefdedfd e
eee� � fd e
ee
j e� � fd e
j f ee � � efd!edfded fdefd"efg
dedfdedfd# e
e
j ee� � fd$ e
e
j � � fdefdefgd%�Zd&S )'r z!
For BARE schema source.
�BAREzhttps://baremessages.orgz*.bare�barez2.7)�type�enum�u8�u16�u32�u64�uint�i8�i16�i32�i64�int�f32�f64�bool�void�data�string�optional�mapz'(type)(\s+)([A-Z][a-zA-Z0-9]+)(\s+)(\{)�structz'(type)(\s+)([A-Z][a-zA-Z0-9]+)(\s+)(\()�unionz#(type)(\s+)([A-Z][a-zA-Z0-9]+)(\s+)�typedefz%(enum)(\s+)([A-Z][a-zA-Z0-9]+)(\s+\{)r z#.*?$z\s+z\{z#pushz\}z#popz([a-zA-Z0-9]+)(:)(\s*)z\)z(\s*)(\|)(\s*)z[A-Z][a-zA-Z0-9]+z\[\]z
(\[)(\d+)(\])z<|>z\(z(\[)([a-z][a-z-A-Z0-9]+)(\])z(\[)([A-Z][a-z-A-Z0-9]+)(\])z([A-Z][a-z-A-Z0-9]+)z\nz\d+z([A-Z][A-Z0-9_]*)(\s*=\s*)(\d+)z([A-Z][A-Z0-9_]*))�rootr$ r% r&