a
    T_i                     @   s   d Z ddlmZmZmZmZmZmZ ddlm	Z	m
Z
mZmZmZmZmZmZ ddl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-2020 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    )
RegexLexerincludebygroupsinheritwordsdefault)TextCommentOperatorKeywordNameStringNumberPunctuation)CLexerCppLexer)_mql_builtinsFreeFemLexerc                   @   st   e Zd ZdZdZdgZdgZdg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 ZdS )r   z
    For `FreeFem++ <https://freefem.org/>`_ source.

    This is an extension of the CppLexer, as the FreeFem Language is a superset
    of C++.

    .. versionadded:: 2.4
    ZFreefemZfreefemz*.edpztext/x-freefem>   z^-1/^%*+z.*z./:'->   boolcomplexZmatrixZvarfZmacroZmesh3ZmpiGroupZ
mpiRequestZfespaceZ
PsemaphoreZdmatrixZsolvefuncZifstreamrealZEndMacrointZmpiCommstringZproblemZ	gslsplineZofstreamZborderZPmmapZNewMacroZmesh>*   ZP3dcZP4ZP2pncZP2BRZP3ZRT2OrthoZRT0OrthoZP1EdgeZ	BDM1OrthoZP1bl3dZP13dZP03dZP1bZP2MorleyZP1ncZP3EdgeZP2dcZRT2ZFEQFZRT1OrthoZP1blZP0ZHCTZP5EdgeZEdge23dZP2EdgeZP2ZP4dcZP0EdgeZP4EdgeZP2hZP23dZRT0ZEdge03dZRT03dZEdge13dZP1ZP2bZRT1ZP1b3dZP1dcZBDM1>   loadr   Z
ENDIFMACROZIFMACRO>p   ZbinaryZqfV1lumpZvolumeZARGVZ	qf1pElumpZmpiCommWorldZmpiMINreZareaZquantileZqf9pTsumZnTonEdgeZ	qf1pTlumpZndofKZqf7pTZfalseZsearchMethodZqfV5ZffindZ
notaregionZmpiBANDPZtellpZFILEZshowbaseZshowposntZmpiLANDl1ZqfV1Zqf2pEZsparsesolverlabelZlenEdgeflushZCGfindxZ	noshowposZInternalEdgeZLINEZbordermeasureZmpiPRODZmpiLXORZ
scientificZimaxrfindZcoutZbeZiminZunused	verbosityZlengthZqfV2ZnbeZGMRESadjZ	precisionZBoundaryEdgemZUMFPACKZLUZmeasureZwhoinElementZcinZ
nuTriangleZCholeskyZmpirankZmpiBXORZgoodZimzZqf1pEZqf3pEZendlZqf5pTr   Zqf5pEl2ZmpiAnySourceZmpiUndefinedZfixedZsetwtrueZmpiMAXregionnZmpiSUMZmpiLORZqf2pT4P1ZnvZqf1pTZqf2pTversionyappendZCroutZqf4pEminZlinftyZdiagNZ	hTriangleZnuEdgeZqfnbpEZedgeOrientationZmpisizeZndofZ
noshowbaseZpimax>  Zgslsfbesseli2scaledZgslsflegendrePlZacosZ	dumptableZgslranexponentialZgslranugaussianratiomethodZsavesolZgslcdfparetoPinvZerfZgslsfpochrelZgslranchisqpdfZgslsfexpintEnscaledZgslsflegendreP3ZmpiRankZgslsfexpintEiZgslsfbesselK1ZgslcdflogisticPinvZ	gslsferfQZmpiAlltoallZgslcdftdistPZgslcdfgumbel2QZgslcdfparetoQinvZint2dZgslsfellintEZgslranlandaupdfZgslsffermidiracmhalfZgslinterpcsplinedZgslsffermidiracinc0ZgslsfetagetlineZdfftZgslcdfgumbel1QinvZgslranlogisticZdxyZgslsfbessellnKnuZ	randreal3ZisolineZ
EigenValueZdzxZgslsflegendreQ1ZgslranbernoullipdfZ
movemesh23ZgslranweibullZgslsfbesselKnZgslsfbesselK0ZgslsfbesselJ1ZgslsfpsiintZgslsfcosZgslsfbesselInscaledZgslcdffdistQinvZgslsflog1plusxZcomplexEigenValueZmeanZgslrancauchyZgslsfairyAiderivscaledZgslcdfweibullPinvZgslranlaplacepdfZgslcdfrayleighQZgslsffermidirachalfZgslsfellintFZatan2ZgslsfatanintZgslcdfexponentialPinvZ
gslranlevyZgslrantdistpdfZgslsfexpintEiscaledZgslcdfpoissonPZgslrangaussianratiomethodZgslsfhyperg1F1intZdzyZgslsfbesselI0scaledZlgammaZcoshZNaNZgslsfairyAiZgslcdfbetaQinvZgslsfexprel2Z
gslsfhypotZ
mpiScatterZgslcdfrayleighPinvZgslsfexpZ	gslsffactZ	splitmeshZgslcdfgammaPZgslranrayleighZgslcdfgumbel2QinvZgslsflogerfcassertZtgammaZgslsffermidirac1ZacoshZgslcdfugaussianPinvZgslranparetopdfZ
mpiWaitAnyZgslsfairyBiscaledZfminZgslsfconicalPmhalfZgetARGVZatanZgslsfzetam1Zj0Zgslsfbessely0ZtruncZ	buildmeshZgslcdflognormalPZgslsfbesselzeroJ0ZgslsfpowintZ	randint32ZsinZgslrangumbel2ZintallfacesZsavemeshZgslsfbesselj0ZchangeZgslsfhydrogenicR1ZgslcdftdistQZgslcdfgammaQZgslsfgammaincQZgslsflndoublefactZgslranexponentialpdfZgslranfdistZgslsfgammaincPZgslcdfgaussianPinvZgslcdflaplaceQinvZgslsfgegenpoly3ZgslsfzetaintZgslsfdebye1ZgslinterpcsplineperiodicZBFGSZ	mpiGatherZerfcZgslcdfbinomialPZgslcdfweibullPZgslsffermidirac2Z	dimKrylovZinvdiffZgslsfairyBiZgslsfgammainclogZgslsflncoshsetZgslsfdebye3ZgslrangammaZ	gslsfbetaZgslsflegendreH3d1ZgslsflegendreH3d0ZatofZgslsfanglerestrictsymmZtetgconvexhullZgslcdfnegativebinomialPsystemZgslcdfexponentialQZ
projectionZsavevtkZgslsfgegenpolynZgslcdfchisqQinvZjnsortZdxxZgslcdfbinomialQZgslsfgegenpoly1ZgslcdfgaussianPZ	processorZgslsflnbetaZgslsfmultiplyZ	mpiReduceZLinearGMRESZPostZgslrangammapdfZgslcdfpoissonQZgslsfbesselzeroJnuZmpiScattervZgslcdfugaussianPZLinearCGZdzZgslsfbesseljlZgslsfbesselj2Zgslsfpsi1piyZgslranbetapdfZgslsfbesselYnuZmpiWaitZgslsfexpintEnZgslsfellintRCZgslsfexpmultZgmshloadZgslcdfexponentialPZIrecvZconjZ	gslsfpochargZgslsfbesselJnuZmmg3dZgslsflegendreQlZsignbitZgslsffermidirac0Z
gslranbetaZjumpZrandomZgslcdfgumbel1PZgslsflogZgslranugaussianpdfZgslrangaussiantailZgslrannegativebinomialpdfZgslcdfgeometricPZgslsfbesselk0scaledZonZ
mpiGathervr.   ZgslsfbesselK1scaledZgslsfexpint3ZmpiAllgatherZgslsfclausenZgslsfhypergUintZgslsfbesselI1ZgslsfellintPcompZgslsfairyAiderivZRecvZgslsfbesselk1scaledZdiffnpZgslcdfchisqPinvZgslcdfugaussianQinvZgslsflnfactZtriangulateZgslcdffdistQZgslcdfflatPinvZgslinterplinearZgslsfbesselk2scaledZgslcdffdistPinvZgslsflegendreP2ZplotZgslranfdistpdfZconvectZ	broadcastZgslinterpakimaZgslsfconicalPcylregswapZcmaesZgslsfexpintE2scaledZ	adaptmeshZcopysignZisNaNZgslcdflogisticQinvZgslsfbesselK0scaledZ	gmshload3ZgslsfdawsonZdyzZgslcdflognormalQinvZgslcdfexppowQZgslcdfexppowPZ	readmesh3ZgslsfexpintE2ZgslcdfbetaPinvZ	gslsfsincZchiZfmodZ
gslranflatZgslranpoissonpdfZgslrangammaintZtanhZtellgZsignZgslrangumbel1pdfZfmaxZsqrtZgslsfbesselI0ZrintZgslranlogisticpdfZ	randint31ZgslranlaplaceZgslsfanglerestrictposZgslsfellintKcompZgslsfbesselYnZgslcdfcauchyPZgslcdfbetaQZgslsfgegenpoly2Z	invdiffnpZgslcdfflatPZgslcdflognormalQZ	gslsfpsinZgslcdfgumbel2PZgslranlognormalpdfZgslsfbesselklscaledZgslcdfgammaQinvZgslcdfcauchyPinvZgslcdfexponentialQinvexitZgslcdfgeometricQZgslcdfparetoPZgslsfsynchrotron1ZgslsfetaintZdistZgslcdfgumbel1QZsrandomZynZgslsfellintEcompZlrintZgslcdfflatQinvZgslsfexpintE1scaledZgslranugaussiantailZ	gslsfpsi1ZgslcdfgaussianQZgslcdfcauchyQinvZlroundZtanZgslsflegendresphPlmZAffineCGZ
gslsfdilogZdyZgslcdfflatQZasinhZreadmeshZgslcdfpascalQZgslcdfweibullQinvZgslcdfgaussianQinvZcubeZgslsfSiZatoiZgslrangaussianpdfZgslsfbesselY1ZasinZgslsfdebye4Zgslsfhyperg2F0roundZtetgtransfoZgslsfbesselInuscaledZgslsfdoublefactZgslsferfZgslsfairyzeroBiZ
srandomdevZgslsfairyBiderivscaledZgslsfbetaincZgslsfhyperg1F1ZgslsfconicalPsphregZgslsfairyAiscaledZddZgslcdftdistPinvZgslsflogabsZisInfZdyyZgslsflaguerre3Zgslsfsynchrotron2ZStringificationZgslsftransport5ZgslranbinomialpdfZgslranugaussianZgslsftransport3ZtetgZ
mpiBarrierZgslsfbesseli1scaledZprocessorblockZgslsfairyzeroAiderivZgslcdfugaussianQZmpiWtickZgslsflegendreH3dZgslrangaussiantailpdfZmpiAllgathervr:   ZinterpolateZ	randreal2imagZgslranrayleightailpdfZgslcdfgammaPinvZgslsflambertW0ZgslcdftdistQinvZgslsfpsi1intZgslrantdistZint1dZSentZgslcdfpascalPabsZclockZgslsfbesselJnZgslrangammamtZdiffposZgslcdflogisticQZgslranweibullpdfZgslsfShiZgslcdfrayleighQinvZgslrangammaknuthZmshmetZgslsflngammaZgslsfbesselKnscaledZgslsflegendreQ0ZWriteZdxZgslsfdebye2ZgslsfexpintE1Zgslsffermidirac3halfZgslsfchooseZIsendZWaitZgslcdffdistPZgslranugaussiantailpdfZgslrangaussianzigguratZgslranerlangpdfZgslsfellintDcompZgslranpascalpdfZgslsfgammastarZfreeyamsZdyxZgslranlogarithmicpdfexecZ	gslsfzetaZgslsfbesselInZgslranchisqZrandinitZgslsfairyzeroBiderivZgslsfexprelZgslrangaussianZgslsfbesselKnuscaledZgslsflegendreP1Zj1Zgslsfbessely1ZgslcdflaplacePinvZgslcdfrayleighPZgslsflnpochpowZgslcdflogisticPZgslranlognormalZgslinterpsteffenZgslsfCiZgslsfzetam1intZ	splitCommZtetgreconstructionZgslsftaylorcoeffZy0ZgslsfbesselI1scaledZlog10Zgslsfdebye6ZmpiAllReduceZgslsfconicalP1ZgslcdfchisqPZgslcdfcauchyQZgslsflaguerre1ZmpiAlltoallvZgslsfairyBiderivZgslsflambertWm1Zgslrangumbel1Zgslsftransport2ZfloorZgslcdflognormalPinvZmovemeshZgslrangeometricpdfZgslsfhypergUZgslranexppowpdfZgslranparetoZgslcdflaplaceQZgslranerlangZatanhZgslsfhyperg0F1ZgslsfbesselY0ZgslsflaguerrenZgslsfbesselInuZgslranexppowZgslsfgammainvZgslsfconicalPhalfZgslcdflaplacePZgslsflegendrearraysizeZgslsflegendrePlmZ	randreal1ZgslranlandauZ	randres53ZgslsflnsinhZgslsfsinZgslsfbesselylZgslsfairyzeroAiZgslsfbessely2ZgslranflatpdfZgslsfconicalP0ZgslcdfweibullQZgslsflnchooseZgslsflog1plusxmxZintalledgesZsinhZ
gslsfexpm1ZgslsfbesselzeroJ1ZsquareZmeditZexpZgslsfexprelnZfdimZgslrangumbel2pdfZ	gslsferfcZgslsflaguerre2Zgslcdfgumbel1PinvZgslsfChiZNLCGZgslinterpakimaperiodicZgslranrayleighpdfZpolarZmpiSizeZbuildlayersZgslsfbesseli0scaledZ	gslsferfZZAffineGMRESZgslranrayleightailZceilZdxzZmpiWtimeZint3dZgslcdfgumbel2PinvZgslinterppolynomialZgslsfpsiZ
gslsfgammaZgslcdfparetoQZgslsfbesselKnuZdzzZgslcdfchisqQZy1Z
invdiffposZgslcdfnegativebinomialQr8   Z	emptymeshZgslcdfbetaPZgslsffermidiracintZ
gslsfhzetaZReadZgslsfhazardZseekgZgslsfbesselJ0Zgslsffermidiracm1ZgslsfbesselilscaledZgslsfdebye5ZcosZgslsfbesselj1ZcheckmovemeshZgslsftransport4Zgslrancauchypdf>   ZqftZtolpivotsymAZflabelZnomeshgenerationZptmergeZIsMetricZvisoZreftriZhsvZhmaxwidthZlabelupZsizeofvolumeZtransfoZisoZWindowIndexZfloatsolZdimoptimizeZsigmaZvepsZ	nbofholesZ
reffacemidordersplitZoptionZ
composanteZ
ridgeangleZanisoZqfeZinitZhminflagsZbwZnbvxZnboffacetclZswitchZsymZ	rescalingbinZqforderr(   valueZabserrorboundaryZgreyZcmmZ	smoothingZorientationtZqfVZ	maxsubdivZ	floatmeshZsaveZsparamsstopZoptionsZ	rawvectorZdatanameopZvarrowZnbiterZfixedborderZlparamsZlevelsetZmemoryBZsolverZreftetZepsZivalueZaspectratioZmeditffZtolZrenumvZfacetclZmaxitmodeZkeepbackverticesZpreconZdoptionsprevZtgvZnbarrowZ	facemergeZpsZwithsurfacemeshZperiodicZ
regionlistcloseZncvZzboundZinsideZsplitin2ZfregionZthetamaxZnbregulr3   Z	labeldownwaitZnbjacobyZdparamsZB1ZrefnumZloptionsZ	reffaceupZ	gradationZratioZdatafilenameZsplitpbedgeZholelistrC   ZU2VcZmemZfillZcoefZtolpivotZ
reffacelowfileZdistmaxZmetricZneverrZlabelmidZpowerZabsoluteZbeginendZnbisoZA1ZnormalizationZnbsmoothZinquireZbbZwhichZomegaZerrgZdisplacementZ	factorizeZnbofregionsZstrategyZvectorcutoffZ
fixeborder>   ZgradtypenameZusingZrestrictthis	namespaceZtypeidZalignofZdoubleZasmZdivZnoexcepttemplateZstatic_assertZmutableZthread_localZdecltypeZ	constexprc                 c   s   t | |D ]\}}}|| jv r.|t|fV  q|| jv rH|tj|fV  q|| jv rb|tj	|fV  q|| j
v r||tj|fV  q|| jv r|tj|fV  q|| jv r|tj|fV  q|| jv r|tj|fV  q|| jv r|t|fV  q|||fV  qd S )N)r   get_tokens_unprocessed	operatorsr
   typesr   Typefespacesr   ZClasspreprocessorr	   ZPreprockeywordsZReserved	functionsZFunction
parametersZPseudosuppress_highlight)selftextindextokenrQ    rp   9/usr/lib/python3/dist-packages/pygments/lexers/freefem.pyrb   o  s$    







z#FreeFemLexer.get_tokens_unprocessedN)__name__
__module____qualname____doc__namealiases	filenamesZ	mimetypesrc   rd   rf   rg   rh   ri   rj   Z
deprecatedrk   rb   rp   rp   rp   rq   r      s(   	t     N)ru   Zpygments.lexerr   r   r   r   r   r   Zpygments.tokenr   r	   r
   r   r   r   r   r   Zpygments.lexers.c_cppr   r   Zpygments.lexersr   __all__r   rp   rp   rp   rq   <module>   s   
 (