�
H�g�X � �� � d Z ddlZddlmZmZmZmZmZmZm Z m
Z
mZmZ ddl
mZmZmZmZmZmZmZmZmZmZmZ ddlmZ g d�ZdZ G d� d e� � Z G d
� de� � Z G d� d
e� � ZdS )z�
pygments.lexers.ruby
~~~~~~~~~~~~~~~~~~~~
Lexers for Ruby and related languages.
:copyright: Copyright 2006-2025 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
� N)
�Lexer�
RegexLexer�ExtendedRegexLexer�include�bygroups�default�LexerContext�
do_insertions�words�line_re)�Text�Comment�Operator�Keyword�Name�String�Number�Punctuation�Error�Generic�
Whitespace��shebang_matches)� RubyLexer�RubyConsoleLexer�
FancyLexer)�*z**�-�+z-@z+@�/�%�&�|�^�`�~z[]z[]=�<<z>>�<�<>z<=>�>z>=z==z===c �� � e Zd ZdZdZdZg d�Zg d�ZddgZdZ e
j e
j z Z
d � Zd
� Zg dej f�dej f�d
ej f� edd�� � ef�d eeeej � � f�d eee� � df�dedf�d eee� � df� edd�� � ej f�dej f� edd�� � ej f�dej f� eddd�� � ej f�dej j f�d ef�d!ef�d"ej d#f�d$ eee j! � � d%f�d&e j! d%f�d' eee j! � � d%f�d( ee"j# ee� � f�d) ee"j$ ee� � f�d* ee"j% ee� � f�d+ ee"j&