HEX
Server: Apache
System: Linux srv1.prosuiteplus.com 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64
User: prosuiteplus (1001)
PHP: 8.3.20
Disabled: NONE
Upload Files
File: //usr/lib/python3/dist-packages/pygments/lexers/__pycache__/fortran.cpython-38.pyc
U

`�\q&�@s�dZddlZddlmZmZmZmZmZmZddl	m
Z
mZmZm
Z
mZmZmZmZmZddgZGdd�de�ZGdd�de�ZdS)	z�
    pygments.lexers.fortran
    ~~~~~~~~~~~~~~~~~~~~~~~

    Lexers for Fortran languages.

    :copyright: Copyright 2006-2017 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@s�eZdZdZdZdgZddddgZdgZej	ej
BZd	ej
fd
efed�ed�d
efed�defgedddd�efedddd�ejfdefdejfdefedddd�ejfdejfdejfgdejfdejfgdejfdejfdejfd ejfgd!�Zd"S)#rz@
    Lexer for FORTRAN 90 code.

    .. versionadded:: 0.10
    ZFortranZfortranz*.f03z*.f90z*.F03z*.F90ztext/x-fortranz^#.*\nz!.*\n�strings�corez[a-z][\w$]*�numsz[\s]+)oZABSTRACTZACCEPTZALLZALLSTOPZALLOCATABLEZALLOCATEZARRAYZASSIGNZ	ASSOCIATEZASYNCHRONOUSZ	BACKSPACEZBINDZBLOCKZ	BLOCKDATAZBYTE�CALLZCASEZCLASSZCLOSEZCODIMENSIONZCOMMONZCONCURRRENTZ
CONTIGUOUSZCONTAINSZCONTINUEZCRITICALZCYCLEZDATAZ
DEALLOCATEZDECODEZDEFERREDZ	DIMENSIONZDOZ	ELEMENTAL�ELSEZENCODEZENDZENTRYZENUMZ
ENUMERATORZEQUIVALENCEZEXITZEXTENDSZEXTERNALZ	EXTRINSICZFILEZFINALZFORALLZFORMATZFUNCTIONZGENERICZGOTOZIFZIMAGESZIMPLICITZIMPORTZIMPUREZINCLUDEZINQUIREZINTENTZ	INTERFACEZ	INTRINSICZISZLOCKZMEMORYZMODULEZNAMELISTZNULLIFYZNONEZ
NON_INTRINSICZNON_OVERRIDABLEZNOPASSZOPENZOPTIONALZOPTIONSZ	PARAMETERZPASSZPAUSEZPOINTERZPRINTZPRIVATEZPROGRAMZ	PROCEDUREZ	PROTECTEDZPUBLICZPUREZREADZ	RECURSIVEZRESULTZRETURNZREWINDZSAVEZSELECTZSEQUENCEZSTOPZ	SUBMODULEZ
SUBROUTINEZSYNCZSYNCALLZ
SYNCIMAGESZ
SYNCMEMORYZTARGETZTHENZTYPEZUNLOCKZUSEZVALUEZVOLATILEZWHEREZWRITEZWHILEz\bz\s*\b)�prefix�suffix)%Z	CHARACTERZCOMPLEXzDOUBLE PRECISIONzDOUBLE COMPLEXZINTEGERZLOGICALZREALZC_INTZC_SHORTZC_LONGZC_LONG_LONGZ
C_SIGNED_CHARZC_SIZE_TZC_INT8_TZ	C_INT16_TZ	C_INT32_TZ	C_INT64_TZC_INT_LEAST8_TZC_INT_LEAST16_TZC_INT_LEAST32_TZC_INT_LEAST64_TZ
C_INT_FAST8_TZC_INT_FAST16_TZC_INT_FAST32_TZC_INT_FAST64_TZ
C_INTMAX_TZ
C_INTPTR_TZC_FLOATZC_DOUBLEZ
C_LONG_DOUBLEZC_FLOAT_COMPLEXZC_DOUBLE_COMPLEXZC_LONG_DOUBLE_COMPLEXZC_BOOLZC_CHARZC_PTRZC_FUNPTRz$(\*\*|\*|\+|-|\/|<|>|<=|>=|==|\/=|=)z(::)z[()\[\],:&%;.](1ZAbortZAbsZAccessZACharZACosZACosHZAdjustLZAdjustRZAImagZAIntZAlarmZAllZ	AllocatedZALogZAMaxZAMinZAModZAndZANIntZAnyZASinZASinHZ
AssociatedZATanZATanHZ
Atomic_DefineZ
Atomic_RefZBesJZBesJNZ	Bessel_J0Z	Bessel_J1Z	Bessel_JNZ	Bessel_Y0Z	Bessel_Y1Z	Bessel_YNZBesYZBesYNZBGEZBGTZBLEZBLTZBit_SizeZBTestZCAbsZCCosZCeilingZCExpZCharZChDirZChModZCLogZCmplxZCommand_Argument_CountZComplexZConjgZCosZCosHZCountZCPU_TimeZCShiftZCSinZCSqRtZCTimeZC_LocZC_AssociatedZ
C_Null_PtrZ
C_Null_FunptrZC_F_PointerZC_F_ProcPointerZC_Null_CharZC_AlertZC_BackspaceZC_Form_FeedZC_FunLocZC_SizeofZ
C_New_LineZC_Carriage_ReturnZC_Horizontal_TabZC_Vertical_TabZDAbsZDACosZDASinZDATanZ
Date_and_TimeZDbesJZDbesJNZDbesYZDbesYNZDbleZDCosZDCosHZDDiMZDErFZDErFCZDExpZDigitsZDiMZDIntZDLogZDMaxZDMinZDModZDNIntZDot_ProductZDProdZDSignZDSinHZDShiftLZDShiftRZDSinZDSqRtZDTanHZDTanZDTimeZEOShiftZEpsilonZErFZErFCZErFC_ScaledZETimeZExecute_Command_LineZExitZExp�ExponentZExtends_Type_OfZFDateZFGetZFGetCZFindLoc�FloatZFloorZFlushZFNumZFPutCZFPutZFractionZFSeekZFStatZFTellZGammaZGErrorZGetArgZGet_CommandZGet_Command_ArgumentZGet_Environment_VariableZGetCWDZGetEnvZGetGIdZGetLogZGetPIdZGetUIdZGMTimeZHostNmZHugeZHypotZIAbsZIACharZIAllZIAndZIAnyZIArgCZIBClrZIBitsZIBSetZICharZIDateZIDiMZIDIntZIDNIntZIEOrZIErrNoZIFixZImagZImagPartZImage_IndexZIndexZIntZIOrZIParityZIRandZIsaTtyZIShftZIShftCZISignZ
Iso_C_BindingZ
Is_ContiguousZ
Is_Iostat_EndZ
Is_Iostat_EorZITimeZKillZKindZLBoundZLCoBoundZLenZLen_TrimZLGeZLGtZLinkZLLeZLLtZLnBlnkZLocZLogZ	Log_GammaZLogicalZLongZLShiftZLStatZLTimeZMaskLZMaskRZMatMulZMaxZMaxExponentZMaxLocZMaxValZMClockZMergeZ
Merge_BitsZ
Move_AllocZMinZMinExponentZMinLocZMinValZModZModuloZMvBitsZNearestZNew_LineZNIntZNorm2ZNotZNullZ
Num_ImagesZOrZPackZParityZPErrorZ	PrecisionZPresentZProductZRadixZRandZ
Random_NumberZRandom_SeedZRangeZRealZRealPartZRenameZRepeatZReshapeZ	RRSpacingZRShiftZSame_Type_AsZScaleZScanZSecondZSelected_Char_KindZSelected_Int_KindZSelected_Real_KindZSet_ExponentZShapeZShiftAZShiftLZShiftRZShortZSignZSignalZSinHZSinZSleepZSnglZSpacingZSpreadZSqRtZSRandZStatZStorage_SizeZSumZSymLnkZSystemZSystem_ClockZTanZTanHZTimeZ
This_ImageZTinyZTrailZZTransferZ	TransposeZTrimZTtyNamZUBoundZUCoBoundZUMaskZUnlinkZUnpackZVerifyZXOrZZAbsZZCosZZExpZZLogZZSinZZSqRtz\.(true|false)\.z+\.(eq|ne|lt|le|gt|ge|not|and|or|eqv|neqv)\.z!(?s)"(\\\\|\\[0-7]+|\\.|[^"\\])*"z!(?s)'(\\\\|\\[0-7]+|\\.|[^'\\])*'z\d+(?![.e])(_[a-z]\w+)?z([+-]?\d*\.\d+([ed][-+]?\d+)?(_[a-z]\w+)?z([+-]?\d+\.\d*([ed][-+]?\d+)?(_[a-z]\w+)?z([+-]?\d+(\.\d*)?[ed][-+]?\d+(_[a-z]\w+)?)�rootrrrN) �__name__�
__module__�__qualname__�__doc__�name�aliases�	filenamesZ	mimetypes�re�
IGNORECASE�	MULTILINE�flagsr	�PreprocrrrrrZTyper
ZDeclarationrZBuiltinZWordr
�Double�SinglerZIntegerr�tokens�r,r,�9/usr/lib/python3/dist-packages/pygments/lexers/fortran.pyrs^���	�
�
2�3�6�g���c@s�eZdZdZdZdgZddgZejZ	ddd�Z
d	efd
ejfdefde
jd
fdee�fgdedfdedfdejdfgdee
ee�dfdee
e�dfed�gd�ZdS)rzD
    Lexer for fixed format Fortran.

    .. versionadded:: 2.1
    ZFortranFixedZfortranfixedz*.fz*.FNccsNt�}|�d�d}|�|�D]*\}}}|�dd�}|dkr|||fVqdS)z8Lex a line just as free form fortran without line break.r�
�N)r�groupZget_tokens_unprocessed�replace)�self�matchZctxZlexer�text�index�token�valuer,r,r-�_lex_fortran�szFortranFixedLexer._lex_fortranz[C*].*\nz#.*\nz {0,4}!.*\nz(.{5})�	cont-charz.*\n� �code�0�.z(.{66})(.*)(\n)rz(.*)(\n))rr9r;)N)rrrr r!r"r#r$r%r'r8r	r(rZLabelrrrrZStrongrrr+r,r,r,r-r�s0


�
�
���)r r$Zpygments.lexerrrrrrrZpygments.tokenrr	r
rrr
rrr�__all__rrr,r,r,r-�<module>s
 ,