o
    *i!i                     @   sB   d Z ddlmZmZmZmZ ddlmZ dgZG dd deZ	dS )z
    pygments.lexers.freefem
    ~~~~~~~~~~~~~~~~~~~~~~~

    Lexer for FreeFem++ language.

    :copyright: Copyright 2006-2025 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    )CommentOperatorKeywordName)CppLexerFreeFemLexerc                   @   s~   e Zd ZdZdZdZdgZdgZdgZdZ	h dZ
h d	Zh d
Zh dZh dZh dZh dZdhZh dZdddZdS )r   z|
    For FreeFem++ source.

    This is an extension of the CppLexer, as the FreeFem Language is a superset
    of C++.
    Freefemzhttps://freefem.org/freefemz*.edpztext/x-freefemz2.4>   /-z^-1^'z.*z./+:%*>   ZifstreamZmpiCommZofstreamZfespaceZ
mpiRequestZEndMacroborderZ
PsemaphorestringfuncZvarfZ	gslsplineproblemmacrocomplexZmpiGroupZdmatrixmatrixrealZmeshZmesh3boolZNewMacroZsolveintZPmmap>*   ZP5EdgeZP2BRZP1blZP1EdgeZP3dcZP4EdgeZEdge03dZP1bZEdge13dZHCTZP0EdgeZ	BDM1OrthoZP1ncZP13dZP23dZRT2OrthoZP2dcZP3ZP4dcZRT03dZP1ZFEQFZRT1OrthoZP2ZP03dZP1bl3dZRT0ZP2hZRT1ZP1dcZP2MorleyZP2bZRT2ZBDM1ZEdge23dZP3EdgeZP4ZRT0OrthoZP0ZP1b3dZP2EdgeZP2pnc>   ZIFMACROloadincludeZ
ENDIFMACRO>p   ZiminmeasureZqfnbpEZ
notaregionadjZ	qf1pTlumpZARGVZInternalEdgepiyZqf4pEZ	noshowposZmpiAnySourceZmpiMINZimaxZgoodZUMFPACKFILEZLINEZqf7pTZsearchMethoddefaultZunusednvtrueZdiagZnbentrfindflushxNZffindZ	hTriangleZCGZmpiBANDZnuEdgelength	verbosityvolumeZCroutZ
noshowbasezZqf9pTappendZtellpbinarynZndofZsetwl1ZmpirankZndofKZ	qf1pElumpZendlZmpisizeZquantileZmpiLANDZwhoinElementZqf1pTZqf1pEbePZmpiLORZmpiCommWorldfalseZmpiUndefinedlabelZqfV1Zqf2pTZGMRESZshowbaseZqf3pEZlenEdgemaxZqf2pT4P1l2ZmpiSUMmZlinftyZqf5pTfixedregionZqfV5ZqfV1lumpZcoutZmpiLXORZareaZshowposZmpiPRODZBoundaryEdgeZcin	precisionZqfV2reminZedgeOrientationZ
nuTriangleZmpiBXORZbordermeasureZ
scientificZnTonEdgeversionZCholeskyZimsumfindZqf5pEZqf2pEZsparsesolverZmpiMAXZLU>  ZgslsfmultiplyZsavevtkZgslsflegendreH3d0onZgslcdfparetoPZgslcdfchisqQinvZLinearGMRESZgslcdfflatQZgslinterpcsplineZmpiAlltoallZfmaxZdzzZplotZgslranugaussianZgslcdffdistPinvZdfftZgslsfhyperg2F0ZgslsflnchooseZgslsfhyperg1F1intZgslsfzetam1intdZgslsfbesselklscaledZgslsflegendrearraysizeZgslcdfgeometricQZgslsfgegenpoly2ZdxxZSentZgslranpoissonpdfZgslsflaguerre3ZgslsfChiZgslranerlangZgslcdffdistQinverfZgslrangaussianpdfZgslranugaussianratiomethodZgslsfbesselzeroJ1logfloorZgslsfbessellnKnuZgslsfexpZgslsfbesselI0asinhZgslcdfnegativebinomialQZgslranrayleighpdfZgslsftransport3ZgslsflncoshZgslsflnbetaZReadZgslsfgegenpoly3ZgslcdfbetaPinvZgslsfexpintEiscaledZgslranlogisticrandomZgslsflngammaZgslsfbesselj2ZtetgreconstructionZjnZsignbitZgslcdfugaussianQZgslsffermidirac1ZchangeZgslranlognormalZgslsfhydrogenicR1ZgslsfbesselKnscaledsetZy0ZgslsfhypergUintZgslsfpsi1intZgslsfairyzeroAiderivZgslcdfrayleighQinvZgslsftransport2ZgslsfsinZgslcdfbetaPZgslsflogerfcZ	gslsffactZj0ZgslsfellintFZgslcdfexponentialPinvZgslcdftdistPZgslcdfgammaPinvZtgammaZgslrangumbel2pdfZgslranfdistZgslranlandauZgslcdfexponentialPZgslsfbesselY1fmodZgslsfexpintEnscaledZgslsflog1plusxmxZgslsfbesselk0scaledZgslcdfgumbel2PinvZ	splitCommZisNaNZgslsflaguerre2Zgslsflog1plusxZgslsfbesselzeroJnuZgslsfairyBiZdyZgslranexponentialpdfZgslsfdebye3ZgslsfbesselJ1ZgslsfbesselJncoshZ
gslsfgammaZ
mpiGathervZgslcdfgumbel1PinvZgslsfbesselYnuZStringificationZgslcdfchisqPinvZgslsflegendresphPlmZgslcdfparetoPinvZgslrangumbel2ZgslsfbesselInuZ
invdiffposZmpiAllReduceZprocessorblockZgslranexppowpdfroundatanZ
EigenValueZgslcdfweibullQZ
mpiWaitAnyswapZ	gslsferfZZbuildlayersZgslsfconicalPsphregZIsendZgslsfexprelZNLCGZgslsflambertW0ZgslcdfchisqQZgslsfbesselj1ZgslcdffdistQZ	randint32ZgslcdfrayleighPinvZgslcdfflatPZgslsfairyAiderivscaledZgslsfhazardZgslcdflogisticQZgslsfzetam1ZjumpZcomplexEigenValueZgslranlaplaceargZgslranerlangpdfZgslsfhyperg1F1ZgslsfbesselYnZ
srandomdevZ	gmshload3ZgslsfbesselI1ZgslsfpowintZBFGSZ
gslsfexpm1ZgslsfellintEZtetgconvexhullZgslsfairyAiderivZgslsfbesselK1coschiceilZinterpolateZmpiAllgathervZgslsfgegenpoly1acosZ	buildmeshZgslcdflogisticQinvZgslsfexpintEiZgslsfdebye6Z
mpiBarrierZ	randint31ZdzyZgslranchisqpdfZgslsfairyBiscaledZgslsfcosZint1dasinZ
gslsfhzetaZcheckmovemeshatoiZgslrangaussianzigguratZgslranexponentialZgslranrayleightailpdfZgslsfbesselInuscaledZgslcdfgaussianQZgslrantdistpdfZconvectZgslranchisqZmpiAlltoallvZdxzZgslsfconicalPcylregZtriangulateZgslsflegendreP3meanZgslranugaussiantailZgslranrayleighZgslsfconicalPhalfZgslsfbesselk2scaledZgslsfatanintZgslcdflogisticPinvZgslsfbesselzeroJ0ZgslsfgammainvZgslsfbesselKnZ	mpiGatherZgslranlognormalpdfZgslsfbesseli0scaledZgslranparetopdfZgslsflambertWm1ZgslsflegendrePlmZ	randreal3ZmshmetZgslcdfcauchyQZgslsfbesseljlabsacoshr>   ZgslsfexpintE2ZLinearCGZgslranexppowZj1ZgslsfairyBiderivZgslsfdebye4ZmpiWtimeZ
gslranflatZIrecvZgslinterpakimaZgslsfsynchrotron2Z
projectionZmeditZgslcdftdistQZcubeZgslcdflognormalPinvZgslcdfchisqPZgslsfdoublefactZgslcdfpascalQZlroundexpZgslsfellintRCZgslsflegendreQ0ZgslcdfcauchyPinvZgslrangeometricpdfZgslsfexpintE2scaledZgslcdfgammaQinvZ
movemesh23ZdyyZgslsfSiZgslsfexpintEnZgslranflatpdfZgslcdflaplacePclockZgslcdfgeometricPexitZdiffposZgslcdfrayleighQZgslrangammaintZgslcdfugaussianPZgslsflegendreP2Zmmg3dZgslsfexprel2Z	invdiffnpZ	randreal1ZgslcdflogisticPZgslcdfparetoQsqrtZgslsfconicalP0ZgslcdfparetoQinvddlog10Z
gslranbetaZsavemeshZgslsfbesselylZgslsfbesselK1scaledZgslsflegendreH3dZint3dZgslrangumbel1pdfZgslsfbesselilscaledZgslsffermidiracintZgslsflnfactZgslcdfbetaQNaNZgslcdfgaussianPZgslcdflognormalQinvsystemZgslcdftdistQinvZynZgslsfbesselKnuscaledZgslsfairyzeroAiZgslsffermidirac0y1ZisolineZgslsflaguerrenZgslranlogarithmicpdfZgslinterpsteffenZgslranweibullZintallfacesZgslsfbessely1ZgslsfbesselJ0ZdzZmovemeshZgslsfexpintE1scaledZgslrangaussianratiomethodZgslranlaplacepdfZgslsfgammaincPZfreeyamsZgslsfanglerestrictsymmZgslcdfbetaQinvZgslranfdistpdfZisInfZgslcdfexponentialQZgslinterpcsplineperiodicZdyxZgslsfgammastarZgslsfbesselKnuZAffineCGZgslcdfgumbel1PZpolarlgammaZgslsfdebye2sinZgslsfbetaincZgslsfbesselI1scaledZgslcdftdistPinvZgslsfellintEcompZgslsfexpintE1ZgslrannegativebinomialpdfZgslsfbesselk1scaledZgslcdfgumbel1QinvZgslranugaussianpdfexecZdxerfcZ	mpiReduce	processorZgslcdfflatPinvZgslsfbesselY0ZgslsfzetaintZgslcdfgammaQZgslranlandaupdfZ	dumptableZ	gslsferfQZgslsfexpint3ZdyzZgslsfbesseli2scaledZdiffnpZgslinterplinearZgslsfetaZgslcdfgaussianQinvZgslcdfweibullQinvZgslcdfcauchyPZAffineGMRESZgslcdflaplaceQinvZrandinittanhZgslsferfZmpiRankZgslsflegendreH3d1ZgslranpascalpdfZtellg	broadcastZgslcdfpoissonPZ	gslsfpochZgslcdfweibullPZgslsfgammaincZgslcdflaplacePinvZgslsfbessely2ZgslrangaussiantailpdfZsquareZgslcdflognormalQZgslsflogabsZmpiAllgatherZgslsftransport4ZgslrangammaZgslsfellintKcompZgslsffermidirac3halfZgslcdflognormalPZgslsflndoublefactZgslsfpsi1piyZgslcdfgaussianPinvZ	gslsferfcZdzxZcmaesZ	readmesh3ZgslsfpsiintZgmshloadZgslcdflaplaceQZgslcdfexppowPZgslcdfexponentialQinvZintalledgesZgslrantdistZgslcdfrayleighPZgslcdfbinomialQZgslranrayleightailZgslsfdawsonZgslrangammaknuthZgslsfbesselInZ
gslsfhypotZWriteZgslcdfgammaPr   Z	dimKrylovZgslsffermidirachalfassertZgslsfbesseli1scaledZgslsflegendreQ1Z	randres53Zgslcdfgumbel2PtanZgslsflegendrePlZgslsffermidiracm1ZgslsfellintDcompZgslsfbesselK0ZgslsfchooseZgslcdffdistPZgslsfexpmultZfdimZgslsfairyAiscaledZgslranlogisticpdfdistZgslsfdebye5ZgslsfCiZgslsfShiZgslsfconicalP1ZreadmeshZPostZ
gslsfdilogZ	gslsfsincZgslsfanglerestrictposZgslranparetoZgslsfexprelnimagZgslsfbesselI0scaledZgslsflegendreQlZgslsfairyzeroBiZgslcdfpoissonQZmpiSizeZgslcdfweibullPinvZWaitZgslsffermidirac2Zgslsfbessely0ZfminZ	gslsfpsinZdxyZinvdiffZgslranugaussiantailpdfZgslsflegendreP1ZgslsffermidiracmhalfZgetARGVZgslsflnpochZgslrangaussiantailZseekgZgslrangammapdfZgslcdfbinomialPZgslranbernoullipdfZgslsfairyAiZ	adaptmeshZtetgatan2ZgslcdfugaussianPinvZgslsfconicalPmhalfZmpiWtickZgslcdfgumbel2QZgslcdfflatQinvZgslrancauchypowZ
mpiScattersignZgslsfclausenZgslcdfgumbel1QZgslsfairyzeroBiderivZgslsffermidiracinc0Zlrintr7   ZconjZgslsfpochrelZgslcdfexppowQZgslranweibullpdfZrintZsrandomZ
gslranlevysorttruncZtetgtransfoZgslsfpsiZgslcdfcauchyQinvZgslsfsynchrotron1ZgslinterpakimaperiodicZint2datanhZgslrangammamtZgslrangumbel1ZgslsflnsinhZgslsflogZRecvZgslsfairyBiderivscaledZgslcdfnegativebinomialPcopysignZmpiScattervZgslsfgegenpolynatofZgslsfellintPcompZsavesolZmpiWaitZgslcdfugaussianQinvZgslsfbesselJnuZ	gslsfzetaZ	randreal2ZgslsfetaintZgslsfgammaincQZgslinterppolynomialZgslranbetapdfZgslsfhyperg0F1Zgslsflaguerre1ZgslrancauchypdfZgslcdfgumbel2QinvZgslsfdebye1Z	emptymeshZgslsfbesselK0scaledZgslsfbesselj0ZgslcdfpascalPZ	gslsfpsi1sinhZgslsfhypergUZgslranbinomialpdfZgslsfbesselInscaledZgslrangaussianZgslsftaylorcoeffZ	splitmeshZ	gslsfbetagetlineZgslsftransport5>   ZcoefZU2VcZ	facemergeZsplitin2ZmetricZmeditffbinZnevZdisplacementZinsideepsZ	maxsubdivoptionwaitZnbregulmodeZsplitpbedgeswitchZIsMetricZfloatsolZ
composanteZ
regionlistZrenumvZreftriZisoZnbvxZ
reffacemidZ
ridgeangleZerrgZWindowIndexZ	nbofholessavesplitZfixedborderZbeginendZstrategydimwidthZholelistflagsZnbarrowZperiodicZlabelmidZlevelsetZzboundZdatanameZvarrowZorientationZvisoZnomeshgenerationZdparamsZmaxitBZsparamsZtolpowerZB1Z	rescalingZmemoryvalueZ	factorizeZptmergeZloptionsZnbisoerrZlabelupZhsvZsolvercutoffZnbsmoothZnbjacobyZtgvr6   ZcmmZtolpivotAtorderopcloseZfregionZqfVwhichZ
reffacelowZnbofregionsZreftetZlparamsZflabelZ	rawvectorr;   ZabserrorratioZkeepbackverticesbwZdatafilenameZwithsurfacemeshfillZaspectratiooptimizeprevstopZ	floatmeshsigmaZbbZsymZsizeofvolumeZgreyZtolpivotsymZhmaxZpreconZncvinitZ	labeldownZnbiterZthetamaxZtransfofileZ	smoothingabsoluteZanisoZfacetclrefnumZdoptionsZinquireZvectorZnboffacetclZhminZ	gradationA1ZdistmaxZnormalizationoptionsZqftrN   ZpsZqforderZ	reffaceupZvepsZivalueZqfeomegaboundaryZmemZ
fixeborder>   doubleZgraddivZ	constexprZrestricttemplateusingZthread_localtypenameZtypeidasmmutableZnoexceptZstatic_assertdecltypeZalignofthis	namespacerootc                 c   s    t | ||D ]q\}}}|| jv r|t|fV  q|| jv r&|tj|fV  q|| jv r3|tj	|fV  q|| j
v r@|tj|fV  q|| jv rM|tj|fV  q|| jv rZ|tj|fV  q|| jv rg|tj|fV  q|| jv rs|t|fV  q|||fV  qd S )N)r   get_tokens_unprocessed	operatorsr   typesr   Typefespacesr   Classpreprocessorr   PreprockeywordsReserved	functionsFunction
parametersPseudosuppress_highlight)selftextstackindextokenr    r   Q/home/kim/smarthome/.venv/lib/python3.10/site-packages/pygments/lexers/freefem.pyr   j  s(   







z#FreeFemLexer.get_tokens_unprocessedN)r   )__name__
__module____qualname____doc__nameurlaliases	filenames	mimetypesversion_addedr   r   r   r   r   r   r   
deprecatedr   r   r   r   r   r   r      s.    t     N)
r   Zpygments.tokenr   r   r   r   Zpygments.lexers.c_cppr   __all__r   r   r   r   r   <module>   s
    
