|errdZddlZddlmZmZmZmZmZmZddl m Z m Z m Z m Z mZmZmZmZmZddlmZmZddlmZgdZGdd eZGd d eZGd d eZGddeZGddeZGddeZGddeZGddeZ GddeZ!GddeZ"GddeZ#y)z pygments.lexers.c_like ~~~~~~~~~~~~~~~~~~~~~~ Lexers for other C-like languages. :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS. :license: BSD, see LICENSE for details. N) RegexLexerincludebygroupsinheritwordsdefault) TextCommentOperatorKeywordNameStringNumber Punctuation Whitespace)CLexerCppLexer) _mql_builtins) PikeLexer NesCLexer ClayLexerECLexer ValaLexer CudaLexer SwigLexerMqlLexer ArduinoLexer CharmciLexer OmgIdlLexerceZdZdZdZdgZddgZdgZedd e fd e jfd e e e d fd e fegdej dfde dfgdZy)rz[ For `Pike `_ source code. .. versionadded:: 2.0 Pikepikez*.pikez*.pmodz text/x-pike)=catchnewprivate protectedpublicgaugethrowthrowsclass interface implementabstractextendsfromthissuperconstantfinalstaticimportuseexterninlineprotobreakcontinueifelseforwhiledoswitchcaseasinversionreturntruefalsenull __VERSION__ __MAJOR__ __MINOR__ __BUILD____REAL_VERSION____REAL_MAJOR____REAL_MINOR____REAL_BUILD____DATE____TIME____FILE____DIR____LINE____AUTO_BIGNUM____NT____PIKE__ __amigaos___Pragma static_assertdefinedsscanf\bsuffixz(bool|int|long|float|short|double|char|string|object|void|mapping|array|multiset|program|function|lambda|mixed|[a-z_][a-z0-9_]*_t)\b (class)(\s+) classnamez[~!%^&*+=|?:<>/@-] [a-zA-Z_]\w*#popz\s*(?=>)) statementsrdN)__name__ __module__ __qualname____doc__namealiases filenames mimetypesrr Typerrr rr Classtokens8/usr/lib/python3/dist-packages/pygments/lexers/c_like.pyrrs DhG8$II PY^ _ &\\ hw ;[ I "H - ' ,djj& 1 *f - -FrtrcpeZdZdZdZdgZdgZdgZdedd e fed d e jfe giZ y ) rz For `nesC `_ source code with preprocessor directives. .. versionadded:: 2.0 nesCnescz*.ncztext/x-nescsrcrg)r.rDasyncatomiccallcommand component components configurationeventr/genericimplementationincludesr,moduler$noracepostprovidessignaltaskusesr`ra) nx_structnx_union nx_int8_t nx_int16_t nx_int32_t nx_int64_t nx_uint8_t nx_uint16_t nx_uint32_t nx_uint64_tN) rhrirjrkrlrmrnrorr rprrrrsrtrurrCsy DhGI!"I  >GL M    #+02\\    FrtrcFeZdZdZdZdgZdgZdgZdefde jfde jfd e fd e fd efd ej fd ej"fdej&fdefdedfdedfg dej*fdefgdefgdedfedgdedfededgdZy)rzT For `Clay `_ source. .. versionadded:: 2.0 Clayz*.clayclayz text/x-clay\s+z//.*?$/(\\\n)?[*](.|\n)*?[*](\\\n)?/aK\b(public|private|import|as|record|variant|instance|define|overload|default|external|alias|rvalue|ref|forward|inline|noinline|forceinline|enum|var|and|or|not|if|else|goto|return|while|switch|case|break|continue|for|in|true|false|try|catch|throw|finally|onerror|staticassert|eval|when|newtype|__FILE__|__LINE__|__COLUMN__|__ARG__)\bz[~!%^&*+=|:<>/-]z[#(){}\[\],;.]z0x[0-9a-fA-F]+[LlUu]*z \d+[LlUu]*z\b(true|false)\bz(?i)[a-z_?][\w?]*z"""tdqs"dqsz(?i)\\(x[0-9a-f]{2}|.)z[^\\"]+\nrfstringsnl)rootrrrrN)rhrirjrkrlrnrmrorr Single Multiliner r rrHexIntegerr BuiltinrEscaperrrrsrtrurr`s D IhGIZ  ' .0A0A B !( +  , %vzz 2 FNN + $,, / !4 ( VV $ 65 !' ,' 6   FO 66 " I  VV $ I  DM C&FrtrceZdZdZdZdgZddgZddgZded d e fed d e jfd e e e dfde jfegiZy)rzU For eC source code with preprocessor directives. .. versionadded:: 1.5 eCecz*.ecz*.ehz text/x-echdrz text/x-ecsrcrg)+virtualr+r%r'propertyr6deleter$new0renewrenew0definegetsetremote dllexport dllimportstdcallsubclass__on_register_module namespaceusing typed_object any_objectincrefregisterwatch stopwatching firewatchers watchableclass_designer class_fixedclass_no_expansionissetclass_default_propertyproperty_category class_dataclass_property thisclassdbtabledbindex database_opendbfieldr`ra)uintuint16uint32uint64boolbyteunicharint64rcrdz(null|value|this)\bN)rhrirjrkrlrmrnrorr rprrr rrrrrsrtrurrs DfG I0I   ,5: ;=D E(057 \\ hw ;[ I #T\\ 2 ! FrtrceZdZdZdZddgZddgZdgZdejd fd e fd e fd e fd ejfdejfgdedfdejfdefdej"fdej"fdej$fdej&fdej(fdefdeeej2efdeeej2fdefeddefeddej8fd eej:e d!fd"eej8e d#fd$eeej<fed%dej>fd&ej@fd'efge!d(e"d)ge!d(e!d*d+efd,ed-fgd.ed-fd/ejFfd0efd efd1efgd2ejd3fd4ejd-fd5ejd-fd6efgd'ejHd-fgd7ej:d-fgd8Z%y9):rzW For Vala source code with preprocessor directives. .. versionadded:: 1.1 Valavalavapiz*.valaz*.vapiz text/x-valaz ^\s*#if\s+0if0rrz\\\nz//(\n|(.|\n)*?[^\\]\n)rz[L@]?"stringz4L?'(\\.|\\[0-7]{1,3}|\\x[a-fA-F0-9]{1,2}|[^\\\'\n])'z (?s)""".*?"""z%(\d+\.\d*|\.\d+|\d+)[eE][+-]?\d+[lL]?z(\d+\.\d*|\.\d+|\d+[fF])[fF]?z0x[0-9a-fA-F]+[Ll]?z 0[0-7]+[Ll]?z\d+[Ll]?z[~!%^&*+=|?:<>/-]z2(\[)(Compact|Immutable|(?:Boolean|Simple)Type)(\])z$(\[)(CCode|(?:Integer|Floating)Type)z [()\[\],.])!rDbaser;rCr# constructr<rrrAr>enumfinallyr?foreachrr=rEislockr$outparamsrGrsizeofrBr1r)trytypeofr@yieldr`ra)r.constdelegatedynamicensuresr8r9internaloverrideownedr%r&r'refrequiresrr5r*unownedvarrvolatileweakyieldsz(namespace|using)(\s+)rz)(class|errordomain|interface|struct)(\s+)r+z(\.)([a-zA-Z_]\w*))voidrchardoublefloatintint8int16int32rlongshortsize_tssize_trtime_tucharruint8rrrulongrushortz(true|false|null)\bre whitespace statementrgz[{}];rfrz/\\([\\abfnrtv"\']|x[a-fA-F0-9]{2,4}|[0-7]{1,3})z [^\\"\n]+z\\z^\s*#if.*?(?>; ? A5 k4>> 2 4 K ( , 5: ;   @IN O   " '1B1BJ(O   9 g)): 6 A " h / 1.7< = \\   $T\\ 2 d #Y- ^ L ! K  L ! L ! [ ! +v &  66 " ? O 6 " f  FO  $W__g > $goov > & @ w   djj& 1   8 cTFrtrcbeZdZdZdZddgZddgZdgZhdZhd Z hd Z hd Z hd Z d dhZ ddZy)ru| For NVIDIA `CUDA™ `_ source. .. versionadded:: 1.6 CUDAz*.cuz*.cuhcudacuz text/x-cuda>__host__ __device__ __global__ __noinline____forceinline__>r __shared__ __constant__ __restrict__>+dim3int1int2int3int4char1char2char3char4long1long2long3long4uint1uint2uint3uint4float1float2float3float4short1short2short3short4uchar1uchar2uchar3uchar4ulong1ulong2ulong3ulong4double1double2ushort1ushort2ushort3ushort4 longlong1 longlong2 ulonglong1 ulonglong2>gridDimblockDimblockIdxwarpSize threadIdx> __syncthreads __threadfence__syncthreads_or__syncthreads_and__syncthreads_count__threadfence_block__threadfence_systemz<<>>c#Ktj|||D]\}}}|tur||jvrtj }n||j vrtj }n{||jvrtj}n\||jvrtj}n=||jvrtj}n||jvrtj}|||fywN)rget_tokens_unprocessedr variable_qualifiersr rp vector_types variablesrexecution_confsPseudofunction_qualifiersReserved functionsFunctionselftextstackindextokenvalues rur[z CudaLexer.get_tokens_unprocessed4s#)#@#@tU#S & E5%}D444#LLEd///#LLEdnn, LLEd222#NNEd666#,,Ednn, MME% % &sC*C,N)r)rhrirjrkrlrnrmrorar\r]r^rcr_r[rsrtrurrs^ D!ItnGI>+2LMI%IenO&rtrceZdZdZdZdgZddgZdgZdZde fe gd e jfde fd e jfe gd Zhd Zd Zy)rzT For `SWIG `_ source code. .. versionadded:: 2.0 SWIGswigz*.swgz*.iz text/swigg{Gz?z \$\**\&?\w+z(%[a-z_][a-z0-9_]*)z##*[a-zA-Z_]\w*)rrg>R%arg%bang%init%warn%apply%begin%clear%types%csenum%define%delete%enddef%extend%header%ignore%import%inline%insert%kwargs%module%nspace%pragma%rename%shadow%sizeof%catches%csconst%default%defined%feature%include%luacode%mutable%typemap%varargs %callback %constant %copyctor %director %fragment %implicit %javaenum %perlcode %template %attribute %delobject %exception %fragments %immutable %javaconst %newobject %pythonabc %refobject %typecheck %descriptor %ignorewarn %naturalvar %pythoncode %shared_ptr %warnfilter %defaultctor %defaultdtor %ifcplusplus %unrefobject %csconstvalue %exceptionvar %implicitconv %pythonappend %trackobjects%javaexception%pythondynamic%pythonprepend%exceptionclass%javaconstvalue%pythoncallback%pythonmaybecall%nestedworkaround%pythonnondynamic%csmethodmodifiers%csnothrowexception%javamethodmodifiers%extend_smart_pointercd}tjd|tj}|D]}|tjvrd}|Sd}|S)Nrz^\s*(%[a-z_][a-z0-9_]*)g\(\?gQ?)refindallMrswig_directives)rgrvmatchesms ru analyse_textzSwigLexer.analyse_textysZ **7rttD AI---     rtN)rhrirjrkrlrmrnropriorityr rrdr rrrrrrsrtrurrFsz DhG% I IH T "  $T]] 3 T "  1  F$O* rtrc XeZdZdZdZgdZgdZdgZdee jde fee jde jfee jdej fee j"dej$fee j&d d ej$fegiZy ) rz For `MQL4 `_ and `MQL5 `_ source code. .. versionadded:: 2.0 MQL)mqlmq4mq5mql4mql5)z*.mq4z*.mq5z*.mqhz text/x-mqlrgr`raz(clr)?prefixrbN)rhrirjrkrlrmrnrorrkeywordsr c_typesrptypesr rd constantsConstantcolorsrrrrsrtrurrs D3G+II  =))% 8' B =(( 7 F =&&u 5t}} E =**5 94== I ='' G ]]    FrtrcVeZdZdZdZdgZdgZdgZddhZhdZ hd Z hd Z hd Z dd Z y )ru For `Arduino(tm) `_ source. This is an extension of the CppLexer, as the Arduino® Language is a superset of C++ .. versionadded:: 2.1 Arduinoarduinoz*.inoztext/x-arduinosetuploop>orandnotxor>Y unsigned int unsigned char unsigned longLOWrHIGHautorrrrrrHrwordINPUT_Boolarrayr+rrIrrunionOUTPUTrrrr8friendr9int8_tr'signedrr5rstructPROGMEMbooleancomplexint16_tint32_tint64_tr%typedefuint8_trEXTERNALINTERNAL_Complexexplicitoperatorruint16_tuint32_tuint64_tunsignedrr& _Imaginary atomic_int const_cast INTERNAL1V1 LED_BUILTIN SYSEX_START atomic_bool atomic_char atomic_long atomic_uint static_cast INPUT_PULLUP INTERNAL2V56 SET_PIN_MODE SYSTEM_RESET atomic_llong atomic_schar atomic_short atomic_uchar atomic_ulong dynamic_cast REPORT_ANALOG atomic_ullong atomic_ushortANALOG_MESSAGEFIRMATA_STRINGREPORT_DIGITALDIGITAL_MESSAGEreinterpret_cast>WSDGSMSPITFTabsbitcosendrmapmaxminpowputrunsintanFileGPRSRSSISSIDTaskWiFiWirebeepfillfindhomelinemoveopenpeekreadrectseeksizesqrtstepstoprgtoneturnAudioBSSIDMouseServobeginblinkclearclickclosedelayflushimageisPINmkdirpointpressprintreadyrmdirwidthwriterBridgeClientEEPROMFileIOGSMPINIRreadPImageSerialServerStreamattachbitSetbuffercircleconfigcursordetachendSMSexistsgetKeyheightlistenmicrosmillisnoFillnoTonerandomremovesetDNSstrokeConsoleEsploraFirmataGSMBandGSM_SMSMailboxProcessStepperUSBHostWiFiUDPbeginSDbitReadconnectdisplaydrawBMPgetBandgetIMEIisAlphaisAsciiisDigitisGraphisPunctisSpaceisValidlocalIPlowBytenoBlinkpinModepointToprepareprintlnprocesspulseInreadRedreleaserunningsetBandsetModeshiftInEthernetGSMModemKeyboardattachedbeginSMSbeginTFTbitClearbitWritecheckPINcheckPUKcheckRegendWritehangCallhighByteknobReadmaintainnoBuffernoCursornoStrokeoverflowparseIntplayFilepositionreadBlueremoteIPsetSpeedshiftOutshutdowntransferupdateIRwriteRGBwriteRed GSMClient GSMServer IPAddress Scheduler YunClient YunServer available changePIN connected constrain endPacket exitValue findUntil gatewayIP getButton getOemKey getResult getSocket isControl isPressed loadImage noDisplay onReceive onRequest pauseMode readBytes readGreen sendSysex setCursor startLoop switchPIN tuneWrite voiceCall writeBlue writeJSON EsploraTFT FileSystem GSMScanner HttpClient RobotMotor WiFiClient WiFiServer analogRead answerCall attachGPRS autoscroll background beginWrite createChar debugPrint disconnect getPINUsed getXChange getYChange interrupts keyPressed macAddress motorsStop mouseMoved parseFloat playMelody randomSeed readButton readSlider readString releaseAll remotePort sendAnalog sendString setPINUsed setTimeout subnetMask tempoWrite writeGreen EthernetUDP analogWrite beginPacket clearScreen compassRead digitalRead drawCompass isDirectory isListening isLowerCase isPrintable isUpperCase keyReleased leftToRight motorsWrite parsePacket readMessage requestFrom rightToLeft serialEvent setBitOrder setDataMode setTextSize GSMVoiceCall RobotControl addParameter beginSpeaker blinkVersion cityNameRead digitalWrite displayLogos getModifiers isActionDone isWhitespace keyboardRead mouseDragged mousePressed noAutoscroll noInterrupts openNextFile parseCommand printVersion processInput readNetworks remoteNumber scanNetworks userNameRead waitContinue writeMessage LiquidCrystal cityNameWrite mouseReleased readJoystickX readJoystickY robotNameRead userNameWriteEthernetClientEthernetServerSoftwareSerialencryptionTypeisAlphaNumericreadBytesUntilreadMicrophonerobotNameWriteMouseControlleranalogReferenceattachInterruptcountryNameReaddetachInterruptendTransmissionreadLightSensorreadStringUntilreadTemperaturerewindDirectoryrunShellCommandsetClockDividercountryNameWritelineFollowConfigmessageAvailablesendDigitalPortsbeginTransmissiondelayMicrosecondsgetAsynchronouslygetCurrentCarriergetSignalStrengthlistenOnLocalhostreadAccelerometerrunAsynchronouslyscrollDisplayLeftwriteMicrosecondsKeyboardControllergetVoiceCallStatusisHexadecimalDigitreadJoystickButtonreadJoystickSwitchscrollDisplayRightsetFirmwareVersionnoListenOnLocalhostsendDigitalPortPairanalogReadResolutionprintFirmwareVersionanalogWriteResolutionretrieveCallingNumberrunShellCommandAsynchronously>asmr1rtypeidalignofmutabledecltypenoexceptrestricttemplatetypename constexprr thread_localr]c#Ktj|||D]\}}}||jvr|tj|f+||j vr |t |fE||jvr|tj|fi||jvr |t|f||jvr|tj|f|||fywrZ) rr[ structurer r operatorsr r^r rbsuppress_highlightrcrdres rur[z#ArduinoLexer.get_tokens_unprocesseds#+#B#B4u#U * E5%&T\\500$..(Xu,,$..(W--u44$111T5(($..(T]]E11UE)) *sC C Nrl)rhrirjrkrlrmrnrorrr^rcrr[rsrtrurrsS DkG I!"I&!I,I4I(>IB5 *rtrcheZdZdZdZdgZdgZgZddee e dfe de fe d e fe giZ y ) rzj For `Charm++ `_ interface files (.ci). .. versionadded:: 2.4 Charmcicharmciz*.cirz (module)(\s+)rd) mainmodule maincharecharergroup nodegroupmessage conditional)entry aggregatethreadedsync exclusivenokeepnotrace immediate expeditedr9localpythonaccel readwrite writeonly accelblock memcriticalpackedvarsizeinitprocinitnodeinitcall stacksize createhere createhomereductiontargetigetnocopyry migratablereadonlyN)rhrirjrkrlrmrnrorr r rrrrrsrtrurr!sz DkGII  x6 D ;<=D F CD FM  N   FrtrcteZdZdZdZdZdgZddgZgZdZ e dd d e fd e e je jd fde e je j e j"e j fde e je j e j"e j fde e je j fde j$fde j$fde j&fde j(fde j*fdefe defe efdefgeddedfeddefdedfgded fededgd!e zej6d"fgedd#efd$ej8fed%d&edfgede d'd d ej<fe d(d d ej>fe d)d d* e ee ejBfe d+d d efd,e ee ejBd-fd.e ejDe ejDfd/e ej8e efd0efeded%g d1Z#y2)3rze Lexer for Object Management Group Interface Definition Language. .. versionadded:: 2.9 z!OMG Interface Definition Languagez'https://www.omg.org/spec/IDL/About-IDL/zomg-idlz*.idlz*.pidlz ((::)?\w+)+)rHrIz(?i)r`rz ([Ll]?)(")rz([Ll]?)(\')(\\[^\']+)(\')z([Ll]?)(\')(\\\')(\')z([Ll]?)(\'.\')z[+-]?\d+(\.\d*)?[Ee][+-]?\d+z)[+-]?(\d+\.\d*)|(\d*\.\d+)([Ee][+-]?\d+)?z(?i)[+-]?0x[0-9a-f]+z [+-]?[1-9]\d*z [+-]?0[0-7]*z[\+\-\*\/%^&\|~])z<>z [{};:,<>\[\]]r z\(r values=z\)rfannotation_params@annotation_params_maybez[{,]z\w+annotation_applz\})rrrErinoutr)ranynativebitfieldrrrwcharoctetrrrrrrrrrrrrfixedsequencerwstringr*) z @annotationrrbitsetr, exception valuetype eventtyper}z (\s+)(\w+))&r.alias attributerC connectorconsumescontextcustomremitsfactoryfinder getraisesr<r6manages mirrorportmultipleObjectoneway primarykeyr%portporttyperr' publishesraisesr setraisessupportsrB truncatablerwr~ typeprefixr ValueBasez(?i)(enum|bitmask)(\s+)(\w+)rz(?i)(module)(\s+)(\w+)z (\w+)(\s*)(=)z[\(\)])rrrrrrN)$rhrirjrkrlurlrmrnro scoped_namerrrrAffixDoublerrrrrrr r rrrrrr rrprrqrrrrsrtrurr?s /D 3CkG(#II K$WU CV L HV\\6==A8 L )v{{FMM6;;O Q %v{{FMM6;;O Q v{{ C D ,fll ; 96<< H $fjj 1 v~~ . fjj ) ( + < ( + $  { +! & L ! K ) H  ;  K (  K!4 5 L ! FO$ K 1J K  L ! k " T]] # % & K (   L ! e-/6.A.A C e - /6ll  <m57?w TXT^T^6_ ae-/6 7-*djj96 C &**JG I x z8L M  $ H  % &C" SLFrtr)$rkrpygments.lexerrrrrrrpygments.tokenr r r r r rrrrpygments.lexers.c_cpprrpygments.lexersr__all__rrrrrrrrrrrrsrtrurs   $$$3)  &&R:0 0ffB_ _D-&-&`??Dx2}*8}*@8<[&[rt