
xi\c           @   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 d e f d     YZ d S(	   s   
    pygments.lexers.freefem
    ~~~~~~~~~~~~~~~~~~~~~~~

    Lexer for FreeFem++ language.

    :copyright: Copyright 2006-2019 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
i(   t
   RegexLexert   includet   bygroupst   inheritt   wordst   default(   t   Textt   Commentt   Operatort   Keywordt   Namet   Stringt   Numbert   Punctuation(   t   CLexert   CppLexer(   t   _mql_builtinst   FreeFemLexerc          B   s   e  Z d  Z d Z d g Z d g Z d g Z e dv Z e dw Z	 e dx Z
 e dy Z e dz Z e d{ Z e d| Z e d} Z e d~ Z du  Z RS(  s   
    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
    t   Freefemt   freefems   *.edps   text/x-freefemt   +t   -t   *s   .*t   /s   ./t   %t   ^s   ^-1t   :s   't   boolt   bordert   complext   dmatrixt   fespacet   funct	   gslsplinet   ifstreamt   intt   macrot   matrixt   mesht   mesh3t   mpiCommt   mpiGroupt
   mpiRequestt   NewMacrot   EndMacrot   ofstreamt   Pmmapt   problemt
   Psemaphoret   realt   solvet   stringt   varft   BDM1t	   BDM1Orthot   Edge03dt   Edge13dt   Edge23dt   FEQFt   HCTt   P0t   P03dt   P0Edget   P1t   P13dt   P1bt   P1b3dt   P1blt   P1bl3dt   P1dct   P1Edget   P1nct   P2t   P23dt   P2bt   P2BRt   P2dct   P2Edget   P2ht   P2Morleyt   P2pnct   P3t   P3dct   P3Edget   P4t   P4dct   P4Edget   P5Edget   RT0t   RT03dt   RT0Orthot   RT1t   RT1Orthot   RT2t   RT2Orthot
   ENDIFMACROR   t   IFMACROt   loadt   adjt   appendt   areat   ARGVt   bet   binaryt   BoundaryEdget   bordermeasuret   CGt   Choleskyt   cint   coutt   CroutR   t   diagt   edgeOrientationt   endlt   falset   ffindt   FILEt   findt   fixedt   flusht   GMRESt   goodt	   hTrianglet   imt   imaxt   imint   InternalEdget   l1t   l2t   labelt   lenEdget   lengtht   LINEt   linftyt   LUt   mt   maxt   measuret   mint   mpiAnySourcet   mpiBANDt   mpiBXORt   mpiCommWorldt   mpiLANDt   mpiLORt   mpiLXORt   mpiMAXt   mpiMINt   mpiPRODt   mpirankt   mpisizet   mpiSUMt   mpiUndefinedt   nt   Nt   nbet   ndoft   ndofKt
   noshowbaset	   noshowpost
   notaregiont   ntt   nTonEdget   nuEdget
   nuTrianglet   nvt   Pt   pit	   precisiont   qf1pEt	   qf1pElumpt   qf1pTt	   qf1pTlumpt   qfV1t   qfV1lumpt   qf2pEt   qf2pTt   qf2pT4P1t   qfV2t   qf3pEt   qf4pEt   qf5pEt   qf5pTt   qfV5t   qf7pTt   qf9pTt   qfnbpEt   quantilet   ret   regiont   rfindt
   scientifict   searchMethodt   setwt   showbaset   showpost   sparsesolvert   sumt   tellpt   truet   UMFPACKt   unusedt   whoinElementt	   verbosityt   versiont   volumet   xt   yt   zt   abst   acost   acosht	   adaptmesht   AffineCGt   AffineGMRESt   argt   asint   asinht   assertt   atant   atan2t   atanht   atoft   atoit   BFGSt	   broadcastt   buildlayerst	   buildmesht   ceilt   chit   complexEigenValuet   copysignt   changet   checkmovemesht   clockt   cmaest   conjt   convectt   cost   cosht   cubet   dt   ddt   dfftt   diffnpt   diffpost	   dimKrylovt   distt	   dumptablet   dxt   dxxt   dxyt   dxzt   dyt   dyxt   dyyt   dyzt   dzt   dzxt   dzyt   dzzt
   EigenValuet	   emptymesht   erft   erfct   exect   exitt   expt   fdimt   floort   fmaxt   fmint   fmodt   freeyamst   getARGVt   getlinet   gmshloadt	   gmshload3t   gslcdfugaussianPt   gslcdfugaussianQt   gslcdfugaussianPinvt   gslcdfugaussianQinvt   gslcdfgaussianPt   gslcdfgaussianQt   gslcdfgaussianPinvt   gslcdfgaussianQinvt   gslcdfgammaPt   gslcdfgammaQt   gslcdfgammaPinvt   gslcdfgammaQinvt   gslcdfcauchyPt   gslcdfcauchyQt   gslcdfcauchyPinvt   gslcdfcauchyQinvt   gslcdflaplacePt   gslcdflaplaceQt   gslcdflaplacePinvt   gslcdflaplaceQinvt   gslcdfrayleighPt   gslcdfrayleighQt   gslcdfrayleighPinvt   gslcdfrayleighQinvt   gslcdfchisqPt   gslcdfchisqQt   gslcdfchisqPinvt   gslcdfchisqQinvt   gslcdfexponentialPt   gslcdfexponentialQt   gslcdfexponentialPinvt   gslcdfexponentialQinvt   gslcdfexppowPt   gslcdfexppowQt   gslcdftdistPt   gslcdftdistQt   gslcdftdistPinvt   gslcdftdistQinvt   gslcdffdistPt   gslcdffdistQt   gslcdffdistPinvt   gslcdffdistQinvt   gslcdfbetaPt   gslcdfbetaQt   gslcdfbetaPinvt   gslcdfbetaQinvt   gslcdfflatPt   gslcdfflatQt   gslcdfflatPinvt   gslcdfflatQinvt   gslcdflognormalPt   gslcdflognormalQt   gslcdflognormalPinvt   gslcdflognormalQinvt   gslcdfgumbel1Pt   gslcdfgumbel1Qt   gslcdfgumbel1Pinvt   gslcdfgumbel1Qinvt   gslcdfgumbel2Pt   gslcdfgumbel2Qt   gslcdfgumbel2Pinvt   gslcdfgumbel2Qinvt   gslcdfweibullPt   gslcdfweibullQt   gslcdfweibullPinvt   gslcdfweibullQinvt   gslcdfparetoPt   gslcdfparetoQt   gslcdfparetoPinvt   gslcdfparetoQinvt   gslcdflogisticPt   gslcdflogisticQt   gslcdflogisticPinvt   gslcdflogisticQinvt   gslcdfbinomialPt   gslcdfbinomialQt   gslcdfpoissonPt   gslcdfpoissonQt   gslcdfgeometricPt   gslcdfgeometricQt   gslcdfnegativebinomialPt   gslcdfnegativebinomialQt   gslcdfpascalPt   gslcdfpascalQt   gslinterpakimat   gslinterpakimaperiodict   gslinterpcsplineperiodict   gslinterpcsplinet   gslinterpsteffent   gslinterplineart   gslinterppolynomialt   gslranbernoullipdft
   gslranbetat   gslranbetapdft   gslranbinomialpdft   gslranexponentialt   gslranexponentialpdft   gslranexppowt   gslranexppowpdft   gslrancauchyt   gslrancauchypdft   gslranchisqt   gslranchisqpdft   gslranerlangt   gslranerlangpdft   gslranfdistt   gslranfdistpdft
   gslranflatt   gslranflatpdft   gslrangammat   gslrangammaintt   gslrangammapdft   gslrangammamtt   gslrangammaknutht   gslrangaussiant   gslrangaussianratiomethodt   gslrangaussianzigguratt   gslrangaussianpdft   gslranugaussiant   gslranugaussianratiomethodt   gslranugaussianpdft   gslrangaussiantailt   gslrangaussiantailpdft   gslranugaussiantailt   gslranugaussiantailpdft   gslranlandaut   gslranlandaupdft   gslrangeometricpdft   gslrangumbel1t   gslrangumbel1pdft   gslrangumbel2t   gslrangumbel2pdft   gslranlogistict   gslranlogisticpdft   gslranlognormalt   gslranlognormalpdft   gslranlogarithmicpdft   gslrannegativebinomialpdft   gslranpascalpdft   gslranparetot   gslranparetopdft   gslranpoissonpdft   gslranrayleight   gslranrayleighpdft   gslranrayleightailt   gslranrayleightailpdft   gslrantdistt   gslrantdistpdft   gslranlaplacet   gslranlaplacepdft
   gslranlevyt   gslranweibullt   gslranweibullpdft   gslsfairyAit   gslsfairyBit   gslsfairyAiscaledt   gslsfairyBiscaledt   gslsfairyAiderivt   gslsfairyBiderivt   gslsfairyAiderivscaledt   gslsfairyBiderivscaledt   gslsfairyzeroAit   gslsfairyzeroBit   gslsfairyzeroAiderivt   gslsfairyzeroBiderivt   gslsfbesselJ0t   gslsfbesselJ1t   gslsfbesselJnt   gslsfbesselY0t   gslsfbesselY1t   gslsfbesselYnt   gslsfbesselI0t   gslsfbesselI1t   gslsfbesselInt   gslsfbesselI0scaledt   gslsfbesselI1scaledt   gslsfbesselInscaledt   gslsfbesselK0t   gslsfbesselK1t   gslsfbesselKnt   gslsfbesselK0scaledt   gslsfbesselK1scaledt   gslsfbesselKnscaledt   gslsfbesselj0t   gslsfbesselj1t   gslsfbesselj2t   gslsfbesseljlt   gslsfbessely0t   gslsfbessely1t   gslsfbessely2t   gslsfbesselylt   gslsfbesseli0scaledt   gslsfbesseli1scaledt   gslsfbesseli2scaledt   gslsfbesselilscaledt   gslsfbesselk0scaledt   gslsfbesselk1scaledt   gslsfbesselk2scaledt   gslsfbesselklscaledt   gslsfbesselJnut   gslsfbesselYnut   gslsfbesselInuscaledt   gslsfbesselInut   gslsfbesselKnuscaledt   gslsfbesselKnut   gslsfbessellnKnut   gslsfbesselzeroJ0t   gslsfbesselzeroJ1t   gslsfbesselzeroJnut   gslsfclausent   gslsfhydrogenicR1t   gslsfdawsont   gslsfdebye1t   gslsfdebye2t   gslsfdebye3t   gslsfdebye4t   gslsfdebye5t   gslsfdebye6t
   gslsfdilogt   gslsfmultiplyt   gslsfellintKcompt   gslsfellintEcompt   gslsfellintPcompt   gslsfellintDcompt   gslsfellintFt   gslsfellintEt   gslsfellintRCt	   gslsferfct   gslsflogerfct   gslsferft	   gslsferfZt	   gslsferfQt   gslsfhazardt   gslsfexpt   gslsfexpmultt
   gslsfexpm1t   gslsfexprelt   gslsfexprel2t   gslsfexprelnt   gslsfexpintE1t   gslsfexpintE2t   gslsfexpintEnt   gslsfexpintE1scaledt   gslsfexpintE2scaledt   gslsfexpintEnscaledt   gslsfexpintEit   gslsfexpintEiscaledt   gslsfShit   gslsfChit   gslsfexpint3t   gslsfSit   gslsfCit   gslsfatanintt   gslsffermidiracm1t   gslsffermidirac0t   gslsffermidirac1t   gslsffermidirac2t   gslsffermidiracintt   gslsffermidiracmhalft   gslsffermidirachalft   gslsffermidirac3halft   gslsffermidiracinc0t   gslsflngammat
   gslsfgammat   gslsfgammastart   gslsfgammainvt   gslsftaylorcoefft	   gslsffactt   gslsfdoublefactt   gslsflnfactt   gslsflndoublefactt   gslsflnchooset   gslsfchooset   gslsflnpocht	   gslsfpocht   gslsfpochrelt   gslsfgammaincQt   gslsfgammaincPt   gslsfgammainct   gslsflnbetat	   gslsfbetat   gslsfbetainct   gslsfgegenpoly1t   gslsfgegenpoly2t   gslsfgegenpoly3t   gslsfgegenpolynt   gslsfhyperg0F1t   gslsfhyperg1F1intt   gslsfhyperg1F1t   gslsfhypergUintt   gslsfhypergUt   gslsfhyperg2F0t   gslsflaguerre1t   gslsflaguerre2t   gslsflaguerre3t   gslsflaguerrent   gslsflambertW0t   gslsflambertWm1t   gslsflegendrePlt   gslsflegendreP1t   gslsflegendreP2t   gslsflegendreP3t   gslsflegendreQ0t   gslsflegendreQ1t   gslsflegendreQlt   gslsflegendrePlmt   gslsflegendresphPlmt   gslsflegendrearraysizet   gslsfconicalPhalft   gslsfconicalPmhalft   gslsfconicalP0t   gslsfconicalP1t   gslsfconicalPsphregt   gslsfconicalPcylregt   gslsflegendreH3d0t   gslsflegendreH3d1t   gslsflegendreH3dt   gslsflogt   gslsflogabst   gslsflog1plusxt   gslsflog1plusxmxt   gslsfpowintt   gslsfpsiintt   gslsfpsit   gslsfpsi1piyt   gslsfpsi1intt	   gslsfpsi1t	   gslsfpsint   gslsfsynchrotron1t   gslsfsynchrotron2t   gslsftransport2t   gslsftransport3t   gslsftransport4t   gslsftransport5t   gslsfsint   gslsfcost
   gslsfhypott	   gslsfsinct   gslsflnsinht   gslsflncosht   gslsfanglerestrictsymmt   gslsfanglerestrictpost   gslsfzetaintt	   gslsfzetat   gslsfzetam1t   gslsfzetam1intt
   gslsfhzetat   gslsfetaintt   gslsfetat   imagt   int1dt   int2dt   int3dt   intalledgest   intallfacest   interpolatet   invdifft	   invdiffnpt
   invdiffpost   Isendt   isInft   isNaNt   isolinet   Irecvt   j0t   j1t   jnt   jumpt   lgammat   LinearCGt   LinearGMRESt   logt   log10t   lrintt   lroundt   meant   meditt   mmg3dt   movemesht
   movemesh23t   mpiAlltoallt   mpiAlltoallvt   mpiAllgathert   mpiAllgathervt   mpiAllReducet
   mpiBarriert	   mpiGathert
   mpiGathervt   mpiRankt	   mpiReducet
   mpiScattert   mpiScattervt   mpiSizet   mpiWaitt
   mpiWaitAnyt   mpiWtickt   mpiWtimet   mshmett   NaNt   NLCGt   ont   plott   polart   Postt   powt	   processort   processorblockt
   projectiont   randinitt	   randint31t	   randint32t   randomt	   randreal1t	   randreal2t	   randreal3t	   randres53t   Readt   readmesht	   readmesh3t   Recvt   rintt   roundt   savemesht   savesolt   savevtkt   seekgt   Sentt   sett   signt   signbitt   sint   sinht   sortt	   splitCommt	   splitmesht   sqrtt   squaret   srandomt
   srandomdevt   Stringificationt   swapt   systemt   tant   tanht   tellgt   tetgt   tetgconvexhullt   tetgreconstructiont   tetgtransfot   tgammat   triangulatet   trunct   Waitt   Writet   y0t   y1t   ynt   At   A1t   abserrort   absolutet   anisot   aspectratiot   Bt   B1t   bbt   beginendt   bint   boundaryt   bwt   closet   cmmt   coeft
   composantet   cutofft   datafilenamet   datanamet   dimt   distmaxt   displacementt   doptionst   dparamst   epst   errt   errgt	   facemerget   facetclt	   factorizet   filet   fillt   fixedbordert   flabelt   flagst	   floatmesht   floatsolt   fregiont	   gradationt   greyt   hmaxt   hmint   holelistt   hsvt   initt   inquiret   insidet   IsMetrict   isot   ivaluet   keepbackverticest	   labeldownt   labelmidt   labelupt   levelsett   loptionst   lparamst   maxitt	   maxsubdivt   meditfft   memt   memoryt   metrict   modet   nbarrowt   nbisot   nbitert   nbjacobyt   nboffacetclt	   nbofholest   nbofregionst   nbregult   nbsmootht   nbvxt   ncvt   nevt   nomeshgenerationt   normalizationt   omegat   opt   optimizet   optiont   optionst   ordert   orientationt   periodict   powert   precont   prevt   pst   ptmerget   qfet   qfordert   qftt   qfVt   ratiot	   rawvectort
   reffacelowt
   reffacemidt	   reffaceupt   refnumt   reftett   reftrit
   regionlistt   renumvt	   rescalingt
   ridgeanglet   savet   sigmat   sizeofvolumet	   smoothingt   solvert   sparamst   splitt   splitin2t   splitpbedget   stopt   strategyt   switcht   symt   tt   tgvt   thetamaxt   tolt   tolpivott   tolpivotsymt   transfot   U2Vct   valuet   varrowt   vectort   vepst   visot   waitt   widtht   withsurfacemesht   WindowIndext   whicht   zboundt
   fixebordert   alignoft   asmt	   constexprt   decltypet   divt   doublet   gradt   mutablet	   namespacet   noexceptt   restrictt   static_assertt   templatet   thist   thread_localt   typeidt   typenamet   usingc         c   sJ  xCt  j |  |  D]/\ } } } | |  j k rB | t | f Vq | |  j k re | t j | f Vq | |  j k r | t j	 | f Vq | |  j
 k r | t j | f Vq | |  j k r | t j | f Vq | |  j k r | t j | f Vq | |  j k r| t j | f Vq | |  j k r4| t | f Vq | | | f Vq Wd  S(   N(   R   t   get_tokens_unprocessedt	   operatorsR   t   typesR	   t   Typet   fespacesR
   t   Classt   preprocessorR   t   Preproct   keywordst   Reservedt	   functionst   Functiont
   parameterst   Pseudot   suppress_highlight(   t   selft   textt   indext   tokenR`  (    (    s6   lib/python2.7/site-packages/pygments/lexers/freefem.pyR~  o  s$    "(   R   R   R   s   .*R   s   ./R   R   s   ^-1R   s   '(   R   R   R   R   R   R    R!   R"   R#   R$   R%   R&   R'   R(   R)   R*   R+   R,   R-   R.   R/   R0   R1   R2   R3   R4   (*   R5   R6   R7   R8   R9   R:   R;   R<   R=   R>   R?   R@   RA   RB   RC   RD   RE   RF   RG   RH   RI   RJ   RK   RL   RM   RN   RO   RP   RQ   RR   RS   RT   RU   RV   RW   RX   RY   RZ   R[   R\   R]   R^   (   R_   R   R`   Ra   (p   Rb   Rc   Rd   Re   Rf   Rg   Rh   Ri   Rj   Rk   Rl   Rm   Rn   R   Ro   Rp   Rq   Rr   Rs   Rt   Ru   Rv   Rw   Rx   Ry   Rz   R{   R|   R}   R~   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   (  R   R   R   R   Rb   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R  R  R  R  R  R  R  R  R	  R
  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R   R!  R"  R#  R$  R%  R&  R'  R(  R)  R*  R+  R,  R-  R.  R/  R0  R1  R2  R3  R4  R5  R6  R7  R8  R9  R:  R;  R<  R=  R>  R?  R@  RA  RB  RC  RD  RE  RF  RG  RH  RI  RJ  RK  RL  RM  RN  RO  RP  RQ  RR  RS  RT  RU  RV  RW  RX  RY  RZ  R[  R\  R]  R^  R_  R`  Ra  Rb  Rc  Rd  Re  Rf  Rg  Rh  Ri  Rj  Rk  Rl  Rm  Rn  Ro  Rp  Rq  Rr  Rs  Rt  Ru  Rv  Rw  Rx  Ry  Rz  R{  R|  R}  R~  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R   R  R  R  R  R  R  R  R  R	  R
  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R   R!  R"  R#  R$  R%  R&  R'  R(  R)  R*  R+  R,  R-  R.  R/  R0  R1  R2  R3  R4  R5  R6  R7  R8  R9  R:  R;  R<  R=  R>  R?  R@  RA  RB  RC  RD  RE  RF  RG  RH  RI  RJ  RK  RL  RM  RN  RO  RP  RQ  RR  RS  RT  RU  RV  RW  RX  RY  RZ  R[  R\  R]  R^  R_  R`  Ra  Rb  Rc  Rd  Re  Rf  Rg  Rh  Ri  Rj  Rk  Rl  Rm  Rn  Ro  Rp  Rq  Rr  Rs  Rt  Ru  Rv  Rw  Rx  Ry  Rz  R{  R|  R}  R~  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R   R  R  R   R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  (   R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R   R  R  R  R  R  R  R  R  R	  R
  R  R  R  R  R  R  R  R  R   R  R  R  R  R  R  R  R  R  R  R  R  R  R   R!  R"  R#  R$  R%  R&  R'  R(  R)  R*  R+  R,  R-  R.  R/  R0  R1  R2  R3  R4  R5  R6  R7  R8  R9  R:  R;  R<  R=  R>  R?  R@  RA  RB  RC  RD  RE  RF  R   RG  RH  RI  RJ  RK  RL  RM  RN  RO  RP  RQ  RR  RS  RT  RU  R  RV  RW  RX  RY  RZ  R[  R\  R]  R^  R_  R`  Ra  Rb  Rc  Rd  Re  Rf  Rg  Rh  Ri  Rj  (   Rk  (   Rl  Rm  Rn  Ro  Rp  Rq  Rr  Rs  Rt  Ru  Rv  Rw  Rx  Ry  Rz  R{  R|  R}  (   t   __name__t
   __module__t   __doc__t   namet   aliasest	   filenamest	   mimetypesR  R  R  R  R  R  R  R  t
   deprecatedR  R~  (    (    (    s6   lib/python2.7/site-packages/pygments/lexers/freefem.pyR      sr  			  	    	                                                                                                               	                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                	                                                                                                                                              	                 	N(   R  t   pygments.lexerR    R   R   R   R   R   t   pygments.tokenR   R   R   R	   R
   R   R   R   t   pygments.lexers.c_cppR   R   t   pygments.lexersR   t   __all__R   (    (    (    s6   lib/python2.7/site-packages/pygments/lexers/freefem.pyt   <module>
   s   .:	