+
    TBi[                         R t ^ RIt^ RIHtHtHtHtHtHtH	t	H
t
 ^ RIHtHtHtHtHtHtHtHtHtHt ^ RIHtHt . ROtR	 t ! R
 R]! ]4      4      t ! R R]! ]4      4      t ! R R]4      t ! R R]4      tR# )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                   a aa \         P                  ! R4      o\         P                  ! R4      o ! VVV 3R lRS 4      pV# )zR
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                   <  <a  ] tR t^*t o RtRR]R3R]3R]P                  3R]P                  3R]P                  3R	]P                  3R
]P                  3R]P                  3R]R3R]R3R]R3]! R?RR7      ]3]! R@RR7      ]P                  3R]P"                  3R]P"                  3R]P                  3R]P"                  3R]! ]]4      RA3R]! ]]4      RB3R]3].RR]! ]P,                  ]]P,                  ]]4      RC3R ]! ]P,                  ]]P,                  4      R3R!]! ]P,                  ]]P.                  ]]4      RC3R"]! ]P,                  ]]P.                  4      R3R#]! ]P,                  ]]4      RC3R$]P,                  R3.RR%]! ]P,                  ]4      R3R&]! ]P,                  ]4      R3.R]! R'4      ]! R4      R(]3R)]R*3R+]R3.R,R-]! ]]]! ]4      ]]P6                  4      R.3].R.]! R'4      R/]3R0]3R1]! ]! ]4      ]]P8                  4      3R2]P6                  3R(]R3R)]R33]! R4      .RR4]R53R6]R3]! R74      .R5R4]R*3R6]R3]! R74      .RR8]R93R:]R3]! R74      .R9R8]R*3R:]R3]! R74      .RR+]R3]! R74      ./tVV3R; ltRDV3R< llt R=t!V t"R># )E-objective.<locals>.GeneratedObjectiveCVariantzE
Implements Objective-C syntax on top of an existing C family lexer.

statements@"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\bsuffixz@(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+)oc_forward_classname@z7([a-zA-Z$_][\w$]*)(\s*:\s*)([a-zA-Z$_][\w$]*)?(\s*)(\{)oc_ivars.([a-zA-Z$_][\w$]*)(\s*:\s*)([a-zA-Z$_][\w$]*)?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*)z([a-zA-Z$_][\w$]*)(\s*;?)
whitespace;z\{#pushz\}rootz/^([-+])(\s*)(\(.*?\))?(\s*)([a-zA-Z$_][\w$]*:?)method,z\.\.\.z (\(.*?\))(\s*)([a-zA-Z$_][\w$]*)z[a-zA-Z$_][\w$]*:function\(literal_number_inner\)	statementz\[literal_array_innerz\]c                   < SP                  V 4      '       d   R # RV 9   d   R# \        P                   ! RV 4      '       d   R# SP                  V 4      '       d   R# ^ # )      ?r   g?z@[0-9]+gffffff?)searchre)text_oc_keywords_oc_messages   &>/usr/lib/python3.14/site-packages/pygments/lexers/objective.pyanalyse_text:objective.<locals>.GeneratedObjectiveCVariant.analyse_text   sL    ""4((9d++##D))    c              3     <"   ^ RI HpHpHp S	P	                  WV4       FV  w  rgpV\
        J g   V\
        P                  J d-   W9   g   W9   g   W9   d   \
        P                  P                  pWgV3x  KX  	  R# 5i    )COCOA_INTERFACESCOCOA_PROTOCOLSCOCOA_PRIMITIVESN)	pygments.lexers._cocoa_builtinsrG   rH   rI   get_tokens_unprocessedr   ClassBuiltinPseudo)
selfr=   stackrG   rH   rI   indextokenvalue	baselexers
   &&&      r@   rK   Dobjective.<locals>.GeneratedObjectiveCVariant.get_tokens_unprocessed   sn     2 2 44TG $eD=ETZZ$70E4L3 $ 3 3E)) Hs   A9A< N)*z	@selectorz@privatez
@protectedz@publicz@encodez@synchronizedz@tryz@throwz@catchz@finallyz@endz	@propertyz@synthesize__bridge__bridge_transfer__autoreleasing__block__weak__strongweakstrongcopyretainassignunsafe_unretainedatomic	nonatomicreadonly	readwritesettergettertypeofinoutinoutreleaseclassz@dynamicz	@optionalz	@requiredz@autoreleasepoolz@import)	idinstancetyperL   IMPSELBOOLIBOutletIBActionunichar)r&   r'   )r&   r(   )r&   r*   ))r0   )#__name__
__module____qualname____firstlineno____doc__r   r   CharFloatHexOctIntegerr   r   r   Typer   rM   r   r
   r   r   rL   Labelr   r   r   FunctionVariabler	   tokensrA   rK   __static_attributes____classdictcell__)__classdict__r>   r?   rT   s   @r@   GeneratedObjectiveCVariantr   *   s    	
 )v&GU:FLLI2FLLA(&**5!6::.v~~."23/2"67 @ INO 	  ;CHJ +DLL9-t||<GV"DLL15x7N)++Xgt-D13 {#K&N K$**dDJJkJ%' C$**dDJJ7A K$**dDJJkJ%' B$**dDJJ7A 0$**dK8:NP&

F;!$ #/$**d+-CE-$**d+V5% %%k"W-V, ) +tU4[/ 	 % {#K(4%+tT]];=%t}}5k6*Z0 %;<($
 #W-V,$%
 %:;($
 "W-V,$$
 !($#ev
p			* 	*rC   r   )r<   compile)rT   r   r>   r?   s   f @@r@   	objectiver      sF     ::ABL ** 4 5KS* S*Y S*j &%rC   c                   @    ] tR t^tRtRtRt. ROtRR.tR.t	Rt
RtR	tR
# )r   z;
For Objective-C source code with preprocessor directives.
zObjective-Czhttps://developer.apple.com/library/archive/documentation/Cocoa/Conceptual/ProgrammingWithObjectiveC/Introduction/Introduction.htmlz*.mz*.hztext/x-objective-c 皙?rV   N)zobjective-c
objectiveczobj-cobjc)rw   rx   ry   rz   r{   nameurlaliases	filenames	mimetypesversion_addedpriorityr   rV   rC   r@   r   r      s6     D PC<GI%&IMHrC   c                   <    ] tR t^tRtRt. R
OtRR.tR.tRt	Rt
RtR	# )r   z=
For Objective-C++ source code with preprocessor directives.
zObjective-C++z*.mmz*.hhztext/x-objective-c++r   r   rV   N)zobjective-c++zobjectivec++zobj-c++zobjc++)rw   rx   ry   rz   r{   r   r   r   r   r   r   r   rV   rC   r@   r   r      s/     DDG I'(IMHrC   c                     a  ] tR t^t o RtRtR.t. R!OtR.tRt	Rt
RR]3R	]! ]]]]P                   ]]4      3R
]! ]]4      R3R]! ]4      3R]! ]]]P                   4      R3R]! ]]4      R"3].RR]3R]R#3R]! ]P                   ]]]]4      3R]P                   3R]R3.RR]! ]P                   ]]P                   4      R3R]P                   R3.RR]! ]]4      R3R]! ]]]P                   4      3R]! ]]]P$                  ]]]4      3R]! ]]]4      R3R]! ]]]]]4      3R]! ]]]4      3]./t]P,                  ! R4      tR tRtV tR # )$r   zC
For Logos + Objective-C source code with preprocessor directives.
Logoslogosztext/x-logosz1.6g      ?r   z(%orig|%log)\bz*(%c)\b(\()(\s*)([a-zA-Z$_][\w$]*)(\s*)(\))z(%init)\b(\()logos_init_directivez(%init)(?=\s*;)z%(%hook|%group)(\s+)([a-zA-Z$_][\w$]+)r&   z(%subclass)(\s+)logos_classname\s+r2   z'([a-zA-Z$_][\w$]*)(\s*)(=)(\s*)([^);]*)r,   r6   r+   r0   z*(%config)(\s*\(\s*)(\w+)(\s*=)(.*?)(\)\s*)z(%ctor)(\s*)(\{)r3   z(%new)(\s*)(\()(.*?)(\))z(\s*)(%end)(\s*)z%(?:hook|ctor|init|c\()c                T    \         P                  P                  V 4      '       d   R # ^ # )r:   )r   _logos_keywordsr;   )r=   s   &r@   rA   LogosLexer.analyse_text  s    %%,,T22rC   rV   N)z*.xz*.xiz*.xmz*.xmi)r&   r   )r   r&   )rw   rx   ry   rz   r{   r   r   r   r   r   r   r   r   r   r
   r   rL   r   r   r   r   r<   r   r   rA   r   r   r   s   @r@   r   r      s     DiG0I IMH 	(:g{D$**dKPRg{+-CE'!235gtTZZ0&: (7D"9(*
 	TN+?@7djj$T4@B"DJJ/K(!
 	>djj$

3V="DJJ7

 	 (7D"9 5gtTZZ02:gtT]]D&$GI (7D+"F(gtWfg>@ (4$"?@
7)FV jj!;<O rC   c                   f  a  ] tR tRt o RtRtRtR.tR.tR.t	Rt
R	R
]3R]3R]P                  R3R]P                  R3R]P                   R3]! R4      ]! R=RR7      ]P(                  3]! R>RR7      ]P(                  P*                  3R]P,                  3R]P0                  3R]P2                  3R]P4                  3R]P6                  3R]P8                  3R]R3R]R3R]3R ]3R!]3.R]! R?RR7      ] 3R"] PB                  3]! R@RR7      ] PB                  3R#] PD                  3R$] PF                  R%3R&]$! ] PF                  ]]PJ                  4      3R']$! ] PF                  ]]PL                  4      3R(]$! ] PF                  ]]P,                  4      3]! RARR7      ] PF                  3.	R)R*]PN                  3.RR
]R+3]! R)4      R,]P                  3.R]! R)4      R-]P                  3R]P                  R.3R/]P                  R+3R0]P                  3.R%R
]R+3R!]PJ                  3]! R	4      .RR
]R+3]! R4      R1]P                   3]! R	4      .RR]R+3]! R24      .RR]R+3]! R24      .R2R3]PP                  R43R5]PR                  3R6]3R7]3.R4R8]PP                  R.3R9]PP                  R+3]! R	4      ./t*R: t+R;t,V t-R<# )Br   i  z
For Swift source.
Swiftzhttps://www.swift.org/z*.swiftswiftztext/x-swiftz2.0r0   z\nr   z//zcomment-singlez/\*zcomment-multiz##(if|elseif|else|endif|available)\bpreprockeywordsr#   r$   z\$\d+z0b[01_]+z	0o[0-7_]+z0x[0-9a-fA-F_]+zD[0-9][0-9_]*(\.[0-9_]+[eE][+\-]?[0-9_]+|\.[0-9_]*|[eE][+\-]?[0-9_]+)z[0-9][0-9_]*z"""zstring-multi"r   z/[(){}\[\].,:;=@#`?]|->|[<&?](?=\w)|(?<=\w)[>!?]z[/=\-+!*%<>&|^?~]+z[a-zA-Z_]\w*z@availability\([^)]+\)z(as|dynamicType|false|is|nil|self|Self|super|true|__COLUMN__|__FILE__|__FUNCTION__|__LINE__|_|#(?:file|line|column|function))\bzimport\bmodulez9(class|enum|extension|struct|protocol)(\s+)([a-zA-Z_]\w*)z(func)(\s+)([a-zA-Z_]\w*)z(var|let)(\s+)([a-zA-Z_]\w*)commentz2:param: [a-zA-Z_]\w*|:returns?:|(FIXME|MARK|TODO):r&   z[^\n]+z[^*/]+r/   z\*/z[*/]+z[A-Za-z]\w*zstring-commonz\\\(zstring-intpzN\\['"\\nrt]|\\x[0-9a-fA-F]{2}|\\[0-7]{1,3}|\\u[0-9a-fA-F]{4}|\\U[0-9a-fA-F]{8}z[^\\"]+z\\r4   r6   c              #    "   ^ RI HpHpHp \        P
                  ! W4       FV  w  rVpV\        J g   V\        P                  J d-   Wr9   g   Ws9   g   Wt9   d   \        P                  P                  pWVV3x  KX  	  R# 5irE   )
rJ   rG   rH   rI   r   rK   r   rL   rM   rN   )rO   r=   rG   rH   rI   rQ   rR   rS   s   &&      r@   rK   !SwiftLexer.get_tokens_unprocessed  sj     	. 	. 11$=  E%} 3,0H/ LL//E%% >s   A=A?rV   N)Array!AutoreleasingUnsafeMutablePointerBidirectionalReverseViewBitBoolCFunctionPointerCOpaquePointerCVaListPointer	CharacterClosedIntervalCollectionOfOneContiguousArray
DictionaryDictionaryGeneratorDictionaryIndexDoubleEmptyCollectionEmptyGeneratorEnumerateGeneratorEnumerateSequenceFilterCollectionViewFilterCollectionViewIndexFilterGeneratorFilterSequenceViewr}   Float80FloatingPointClassificationGeneratorOfGeneratorOfOneGeneratorSequenceHalfOpenInterval
HeapBufferHeapBufferStorageImplicitlyUnwrappedOptionalIndexingGeneratorIntInt16Int32Int64Int8LazyBidirectionalCollectionLazyForwardCollectionLazyRandomAccessCollectionLazySequenceMapCollectionViewMapSequenceGeneratorMapSequenceViewMirrorDispositionObjectIdentifierOnHeapOptionalPermutationGeneratorQuickLookObjectRandomAccessReverseViewRangeRangeGeneratorRawByteRepeatReverseBidirectionalIndexReverseRandomAccessIndex
SequenceOfSinkOfSliceStaticStringStrideThroughStrideThroughGeneratorStrideToStrideToGeneratorr   UIntUInt16UInt32UInt64UInt8UTF16UTF32UTF8UnicodeDecodingResultUnicodeScalar	UnmanagedUnsafeBufferPointerUnsafeBufferPointerGeneratorUnsafeMutableBufferPointerUnsafeMutablePointerUnsafePointerZip2ZipGenerator2AbsoluteValuable	AnyObjectArrayLiteralConvertibleBidirectionalIndexTypeBitwiseOperationsTypeBooleanLiteralConvertibleBooleanTypeCVarArgTypeCollectionType
ComparableDebugPrintableDictionaryLiteralConvertible	Equatable)ExtendedGraphemeClusterLiteralConvertibleExtensibleCollectionTypeFloatLiteralConvertibleFloatingPointTypeForwardIndexTypeGeneratorTypeHashableIntegerArithmeticTypeIntegerLiteralConvertibleIntegerTypeIntervalType
MirrorTypeMutableCollectionTypeMutableSliceableNilLiteralConvertibleOutputStreamType	PrintableRandomAccessIndexTypeRangeReplaceableCollectionTypeRawOptionSetTypeRawRepresentableReflectableSequenceTypeSignedIntegerTypeSignedNumberTypeSinkType	Sliceable
Streamable
StrideableStringInterpolationConvertibleStringLiteralConvertibleUnicodeCodecTypeUnicodeScalarLiteralConvertibleUnsignedIntegerType_ArrayBufferType_BidirectionalIndexType_CocoaStringType_CollectionType_Comparable_ExtensibleCollectionType_ForwardIndexType_Incrementable_IntegerArithmeticType_IntegerType_ObjectiveCBridgeable_RandomAccessIndexType_RawOptionSetType_SequenceType_Sequence_Type_SignedIntegerType_SignedNumberType
_Sliceable_Strideable"_SwiftNSArrayRequiredOverridesType_SwiftNSArrayType_SwiftNSCopyingType'_SwiftNSDictionaryRequiredOverridesType_SwiftNSDictionaryType_SwiftNSEnumeratorType_SwiftNSFastEnumerationType#_SwiftNSStringRequiredOverridesType_SwiftNSStringType_UnsignedIntegerTypeC_ARGCC_ARGVProcessAnyAnyClassBooleanLiteralTypeCBoolCCharCChar16CChar32CDoubleCFloatCIntCLong	CLongLongCShortCSignedCharCUnsignedIntCUnsignedLongCUnsignedShort	CWideCharExtendedGraphemeClusterTypeFloat32Float64FloatLiteralTypeIntMaxIntegerLiteralTypeStringLiteralTypeUIntMaxUWordUnicodeScalarTypeVoidWordNSErrorPointerNSObjectProtocolSelector)KabsadvancealignofalignofValueassertassertionFailurecontainscountcountElements
debugPrintdebugPrintlndistance	dropFirstdropLastdump	enumerateequalextend
fatalErrorfilterfindfirst	getVaListindicesinsertisEmptyjoinlastlazylexicographicalComparemapmax
maxElementmin
minElementnumericCastoverlaps	partitionpreconditionpreconditionFailureprefixprintprintlnreducereflect	removeAllremoveAtIndex
removeLastremoveRangereversesizeofsizeofValuesortsortedsplicesplit
startsWithstridestrideofstrideofValuer%   swaptoDebugStringtoString	transcodeunderestimateCountunsafeAddressOfunsafeBitCastunsafeDowncastwithExtendedLifetimewithUnsafeMutablePointerwithUnsafeMutablePointerswithUnsafePointerwithUnsafePointers
withVaList)asasyncawaitbreakcasecatchcontinuer	   deferdoelsefallthroughforguardifrj   isrepeatreturnz	#selectorswitchthrowtrywherewhile))associativityconveniencedynamicdidSetfinalgetindirectinfixrl   r  leftmutatingnonenonmutatingoptionaloverridepostfix
precedencer  Protocolrequiredrethrowsrightsetthrowsr   unownedr]   willSetz@availabilityz@autoclosurez	@noreturnz@NSApplicationMainz
@NSCopyingz
@NSManagedz@objcz@UIApplicationMainz	@IBActionz@IBDesignablez@IBInspectablez	@IBOutlet)actorassociatedtypern   deinitenum	extensionfuncimportinitinternalletoperatorprivateprotocolpublicstaticstruct	subscript	typealiasvar).rw   rx   ry   rz   r{   r   r   r   r   r   r   r
   r   r   Single	MultilinePreprocr   r   r   rM   rN   r   r   Binr   r~   r}   r   r   r   r   r   ReservedConstantDeclarationr   rL   r   SpecialInterpolEscaper   rK   r   r   r   s   @r@   r   r     s     D
"CIiG IM 	DMZ GNN$45W&&83W__iP J  ?B~ KP?Q@ \\A@D   ',-  \\  !"& t}}% &**%6::&,-.4ll<fnn-V^,68$ @M"H- d#mw
p 	 " +0	1
  '(8(89 	/ 8=	> 
34;4D4DF '--x8Ig)):tzzBD)g)):t}}EG,hw7J7J/( ) E NST   	";"
F 	B__
 	J'I'

 	I))*W&&0W&&/w(()
 	J'djj)FO

 	J'JW__-FO	
 	66"O$
 	VV$O$
 	foo}59:@--I FO
 	FOOW-FOOV,FO
QMF^& &rC   )r   r   r   r   )r{   r<   pygments.lexerr   r   r   r   r   r   r   r	   pygments.tokenr
   r   r   r   r   r   r   r   r   r   pygments.lexers.c_cppr   r   __all__r   r   r   r   r   rV   rC   r@   <module>r     s|    
  6 6 6 3
Nh&Vi' 
	(+ 
<" <~e& e&rC   