Файловый менеджер - Редактировать - /opt/imh-python/lib/python3.9/site-packages/pygments/lexers/__pycache__/objective.cpython-39.pyc
Ðазад
a a�h[ � @ s� d Z ddlZddlmZmZmZmZmZmZm Z m Z ddlmZm Z mZmZmZmZmZmZmZmZ ddlmZmZ g d�Zdd� ZG d d � d ee��ZG dd� dee��ZG d d� de�ZG dd� de�ZdS )z� pygments.lexers.objective ~~~~~~~~~~~~~~~~~~~~~~~~~ Lexers for Objective-C family languages. :copyright: Copyright 2006-2025 by the Pygments team, see AUTHORS. :license: BSD, see LICENSE for details. � N)� RegexLexer�include�bygroups�using�this�words�inherit�default) �Text�Keyword�Name�String�Operator�Number�Punctuation�Literal�Comment� Whitespace)�CLexer�CppLexer)�ObjectiveCLexer�ObjectiveCppLexer� LogosLexer� SwiftLexerc s0 t �d�� t �d��G � ��fdd�d��}|S )z^ Generate a subclass of baselexer that accepts the Objective-C syntax extensions. z @(?:end|implementation|protocol)z<\[\s*[a-zA-Z_]\w*\s+(?:[a-zA-Z_]\w*\s*\]|(?:[a-zA-Z_]\w*)?:)c s| e Zd ZdZdedfdefdejfdejfdejfdejfd ej fd ej fdedfd edfdedfeddd�e feddd�e jfdejfdejfde jfdejfdee e�dfdee e�dfdefegdeejeejee�dfd eejeej�d!fd"eejeejee�dfd#eejeej�d!fd$eejee�dfd%ejd!fgd&eeje�d'fd(eeje�d!fged)�ed*�d+efd,ed-fd.ed!fgd/eeeee�eej�d0feged)�d1efd2efd3eee�eej�fd4ejfd+ed!fd,ed5fed!�gd6ed7fd8ed!fed9�gd6ed-fd8ed!fed9�gd:ed;fd<ed!fed9�gd:ed-fd<ed!fed9�gd.ed!fed9�gd=�Z� �fd>d?�ZdD�fdAdB� ZdCS )Ez-objective.<locals>.GeneratedObjectiveCVariantzU Implements Objective-C syntax on top of an existing C family lexer. �@"�stringz @(YES|NO)z3@'(\\.|\\[0-7]{1,3}|\\x[a-fA-F0-9]{1,2}|[^\\\'\n])'z&@(\d+\.\d*|\.\d+|\d+)[eE][+-]?\d+[lL]?z@(\d+\.\d*|\.\d+|\d+[fF])[fF]?z@0x[0-9a-fA-F]+[Ll]?z @0[0-7]+[Ll]?z @\d+[Ll]?z@\(�literal_numberz@\[� literal_arrayz@\{�literal_dictionary)*z @selectorz@privatez @protectedz@publicz@encodez @synchronizedz@tryz@throwz@catchz@finallyz@endz @propertyz@synthesizeZ__bridgeZ__bridge_transferZ__autoreleasingZ__blockZ__weakZ__strong�weak�strong�copy�retainZassignZunsafe_unretainedZatomicZ nonatomic�readonlyZ readwrite�setter�getterZtypeof�in�out�inout�release�classz@dynamicz @optionalz @requiredz@autoreleasepoolz@import�\b��suffix) �idZinstancetype�ClassZIMPZSELZBOOLZIBOutletZIBActionZunicharz@(true|false|YES|NO)\nz(YES|NO|nil|self|super)\bz3(Boolean|UInt8|SInt8|UInt16|SInt16|UInt32|SInt32)\bz(TRUE|FALSE)\bz!(@interface|@implementation)(\s+))�#pop�oc_classnamez(@class|@protocol)(\s+))r0 �oc_forward_classname�@z7([a-zA-Z$_][\w$]*)(\s*:\s*)([a-zA-Z$_][\w$]*)?(\s*)(\{))r0 �oc_ivars�.([a-zA-Z$_][\w$]*)(\s*:\s*)([a-zA-Z$_][\w$]*)?r0 z6([a-zA-Z$_][\w$]*)(\s*)(\([a-zA-Z$_][\w$]*\))(\s*)(\{)z-([a-zA-Z$_][\w$]*)(\s*)(\([a-zA-Z$_][\w$]*\))z([a-zA-Z$_][\w$]*)(\s*)(\{)�([a-zA-Z$_][\w$]*)z([a-zA-Z$_][\w$]*)(\s*,\s*)r2 z([a-zA-Z$_][\w$]*)(\s*;?)� whitespace� statements�;z\{�#pushz\}z/^([-+])(\s*)(\(.*?\))?(\s*)([a-zA-Z$_][\w$]*:?)�method�,z\.\.\.z (\(.*?\))(\s*)([a-zA-Z$_][\w$]*)z[a-zA-Z$_][\w$]*:�function�\(�literal_number_inner�\)Z statementz\[�literal_array_innerz\])r8 r1 r2 r4 �rootr; r r? r rA r c s<