Ë üaýhãó�—dZddlZddlmZmZmZmZmZmZddl m Z m Z m Z m Z mZmZmZmZmZddgZGd„de«ZGd„de«Zy) zÐ pygments.lexers.fortran ~~~~~~~~~~~~~~~~~~~~~~~ Lexers for Fortran languages. :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS. :license: BSD, see LICENSE for details. éN)Ú RegexLexerÚbygroupsÚincludeÚwordsÚusingÚdefault) ÚTextÚCommentÚOperatorÚKeywordÚNameÚStringÚNumberÚ PunctuationÚGenericÚ FortranLexerÚFortranFixedLexerc ó’—eZdZdZdZdZddgZgd¢ZdgZe je jzZ de jfd e fed «ed «d efed «dej$fgdeeej$e«fdeeej$e«feddd¬«efeddd¬«ej,fdefdej0fdefeddd¬«ej4fdej4fdej6fg dej:fdej<fgdej@fdejBfd ejBfd!ejBfgd"œZ"y#)$rz@ Lexer for FORTRAN 90 code. .. versionadded:: 0.10 ÚFortranzhttps://fortran-lang.org/ÚfortranÚf90)z*.f03z*.f90z*.F03z*.F90ztext/x-fortranz^#.*\nz!.*\nÚstringsÚcorez [a-z][\w$]*Únumsz[\s]+z\b(DO)(\s+)(CONCURRENT)\bz\b(GO)(\s*)(TO)\b)ÚABSTRACTÚACCEPTÚALLÚALLSTOPÚ ALLOCATABLEÚALLOCATEÚARRAYÚASSIGNÚ ASSOCIATEÚ ASYNCHRONOUSÚ BACKSPACEÚBINDÚBLOCKÚ BLOCKDATAÚBYTEÚCALLÚCASEÚCLASSÚCLOSEÚ CODIMENSIONÚCOMMONÚ CONTIGUOUSÚCONTAINSÚCONTINUEÚCRITICALÚCYCLEÚDATAÚ DEALLOCATEÚDECODEÚDEFERREDÚ DIMENSIONÚDOÚ ELEMENTALÚELSEÚELSEIFÚENCODEÚENDÚ ENDASSOCIATEÚENDBLOCKÚENDDOÚENDENUMÚ ENDFORALLÚ ENDFUNCTIONÚENDIFÚ ENDINTERFACEÚ ENDMODULEÚ ENDPROGRAMÚ ENDSELECTÚ ENDSUBMODULEÚ ENDSUBROUTINEÚENDTYPEÚENDWHEREÚENTRYÚENUMÚ ENUMERATORÚ EQUIVALENCEz ERROR STOPÚEXITÚEXTENDSÚEXTERNALÚ EXTRINSICÚFILEÚFINALÚFORALLÚFORMATÚFUNCTIONÚGENERICÚIFÚIMAGESÚIMPLICITÚIMPORTÚIMPUREÚINCLUDEÚINQUIREÚINTENTÚ INTERFACEÚ INTRINSICÚISÚLOCKÚMEMORYÚMODULEÚNAMELISTÚNULLIFYÚNONEÚ NON_INTRINSICÚNON_OVERRIDABLEÚNOPASSÚONLYÚOPENÚOPTIONALÚOPTIONSÚ PARAMETERÚPASSÚPAUSEÚPOINTERÚPRINTÚPRIVATEÚPROGRAMÚ PROCEDUREÚ PROTECTEDÚPUBLICÚPUREÚREADÚ RECURSIVEÚRESULTÚRETURNÚREWINDÚSAVEÚSELECTÚSEQUENCEÚSTOPÚ SUBMODULEÚ SUBROUTINEÚSYNCÚSYNCALLÚ SYNCIMAGESÚ SYNCMEMORYÚTARGETÚTHENÚTYPEÚUNLOCKÚUSEÚVALUEÚVOLATILEÚWHEREÚWRITEÚWHILEz\bz\s*\b)ÚprefixÚsuffix)%Ú CHARACTERÚCOMPLEXzDOUBLE PRECISIONzDOUBLE COMPLEXÚINTEGERÚLOGICALÚREALÚC_INTÚC_SHORTÚC_LONGÚ C_LONG_LONGÚ C_SIGNED_CHARÚC_SIZE_TÚC_INT8_TÚ C_INT16_TÚ C_INT32_TÚ C_INT64_TÚC_INT_LEAST8_TÚC_INT_LEAST16_TÚC_INT_LEAST32_TÚC_INT_LEAST64_TÚ C_INT_FAST8_TÚC_INT_FAST16_TÚC_INT_FAST32_TÚC_INT_FAST64_TÚ C_INTMAX_TÚ C_INTPTR_TÚC_FLOATÚC_DOUBLEÚ C_LONG_DOUBLEÚC_FLOAT_COMPLEXÚC_DOUBLE_COMPLEXÚC_LONG_DOUBLE_COMPLEXÚC_BOOLÚC_CHARÚC_PTRÚC_FUNPTRz$(\*\*|\*|\+|-|\/|<|>|<=|>=|==|\/=|=)z(::)z[()\[\],:&%;.](1ÚAbortÚAbsÚAccessÚACharÚACosÚACosHÚAdjustLÚAdjustRÚAImagÚAIntÚAlarmÚAllÚ AllocatedÚALogÚAMaxÚAMinÚAModÚAndÚANIntÚAnyÚASinÚASinHÚ AssociatedÚATanÚATanHÚ Atomic_DefineÚ Atomic_RefÚBesJÚBesJNÚ Bessel_J0Ú Bessel_J1Ú Bessel_JNÚ Bessel_Y0Ú Bessel_Y1Ú Bessel_YNÚBesYÚBesYNÚBGEÚBGTÚBLEÚBLTÚBit_SizeÚBTestÚCAbsÚCCosÚCeilingÚCExpÚCharÚChDirÚChModÚCLogÚCmplxÚCommand_Argument_CountÚComplexÚConjgÚCosÚCosHÚCountÚCPU_TimeÚCShiftÚCSinÚCSqRtÚCTimeÚC_LocÚ C_AssociatedÚ C_Null_PtrÚ C_Null_FunptrÚ C_F_PointerÚC_F_ProcPointerÚ C_Null_CharÚC_AlertÚ C_BackspaceÚ C_Form_FeedÚC_FunLocÚC_SizeofÚ C_New_LineÚC_Carriage_ReturnÚC_Horizontal_TabÚC_Vertical_TabÚDAbsÚDACosÚDASinÚDATanÚ Date_and_TimeÚDbesJÚDbesJNÚDbesYÚDbesYNÚDbleÚDCosÚDCosHÚDDiMÚDErFÚDErFCÚDExpÚDigitsÚDiMÚDIntÚDLogÚDMaxÚDMinÚDModÚDNIntÚ Dot_ProductÚDProdÚDSignÚDSinHÚDShiftLÚDShiftRÚDSinÚDSqRtÚDTanHÚDTanÚDTimeÚEOShiftÚEpsilonÚErFÚErFCÚ ErFC_ScaledÚETimeÚExecute_Command_LineÚExitÚExpÚExponentÚExtends_Type_OfÚFDateÚFGetÚFGetCÚFindLocÚFloatÚFloorÚFlushÚFNumÚFPutCÚFPutÚFractionÚFSeekÚFStatÚFTellÚGammaÚGErrorÚGetArgÚ Get_CommandÚGet_Command_ArgumentÚGet_Environment_VariableÚGetCWDÚGetEnvÚGetGIdÚGetLogÚGetPIdÚGetUIdÚGMTimeÚHostNmÚHugeÚHypotÚIAbsÚIACharÚIAllÚIAndÚIAnyÚIArgCÚIBClrÚIBitsÚIBSetÚICharÚIDateÚIDiMÚIDIntÚIDNIntÚIEOrÚIErrNoÚIFixÚImagÚImagPartÚ Image_IndexÚIndexÚIntÚIOrÚIParityÚIRandÚIsaTtyÚIShftÚIShftCÚISignÚ Iso_C_BindingÚ Is_ContiguousÚ Is_Iostat_EndÚ Is_Iostat_EorÚITimeÚKillÚKindÚLBoundÚLCoBoundÚLenÚLen_TrimÚLGeÚLGtÚLinkÚLLeÚLLtÚLnBlnkÚLocÚLogÚ Log_GammaÚLogicalÚLongÚLShiftÚLStatÚLTimeÚMaskLÚMaskRÚMatMulÚMaxÚ MaxExponentÚMaxLocÚMaxValÚMClockÚMergeÚ Merge_BitsÚ Move_AllocÚMinÚ MinExponentÚMinLocÚMinValÚModÚModuloÚMvBitsÚNearestÚNew_LineÚNIntÚNorm2ÚNotÚNullÚ Num_ImagesÚOrÚPackÚParityÚPErrorÚ PrecisionÚPresentÚProductÚRadixÚRandÚ Random_NumberÚ Random_SeedÚRangeÚRealÚRealPartÚRenameÚRepeatÚReshapeÚ RRSpacingÚRShiftÚ Same_Type_AsÚScaleÚScanÚSecondÚSelected_Char_KindÚSelected_Int_KindÚSelected_Real_KindÚ Set_ExponentÚShapeÚShiftAÚShiftLÚShiftRÚShortÚSignÚSignalÚSinHÚSinÚSleepÚSnglÚSpacingÚSpreadÚSqRtÚSRandÚStatÚ Storage_SizeÚSumÚSymLnkÚSystemÚ System_ClockÚTanÚTanHÚTimeÚ This_ImageÚTinyÚTrailZÚTransferÚ TransposeÚTrimÚTtyNamÚUBoundÚUCoBoundÚUMaskÚUnlinkÚUnpackÚVerifyÚXOrÚZAbsÚZCosÚZExpÚZLogÚZSinÚZSqRtz\.(true|false)\.z+\.(eq|ne|lt|le|gt|ge|not|and|or|eqv|neqv)\.z"(\\[0-7]+|\\[^0-7]|[^"\\])*"z'(\\[0-7]+|\\[^0-7]|[^'\\])*'z\d+(?![.e])(_([1-9]|[a-z]\w*))?z0[+-]?\d*\.\d+([ed][-+]?\d+)?(_([1-9]|[a-z]\w*))?z0[+-]?\d+\.\d*([ed][-+]?\d+)?(_([1-9]|[a-z]\w*))?z0[+-]?\d+(\.\d*)?[ed][-+]?\d+(_([1-9]|[a-z]\w*))?)ÚrootrrrN)#Ú__name__Ú __module__Ú __qualname__Ú__doc__ÚnameÚurlÚaliasesÚ filenamesÚ mimetypesÚreÚ IGNORECASEÚ MULTILINEÚflagsr ÚPreprocrr r Ú Whitespacerr rÚTyper Ú DeclarationrÚBuiltinÚWordrÚDoubleÚSinglerÚIntegerr?Útokens©óúr&sLðñó çO×O÷!÷!õ!ð Ð.Ð /€ôV�:ôVôr(˜ õ(r