
xi\c           @   s   d  Z  d d l 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 m Z m Z m Z m Z m Z m Z m Z m Z d d l m Z d d l m Z d d	 g Z d e f d
     YZ d	 e f d     YZ d S(   s   
    pygments.lexers.pascal
    ~~~~~~~~~~~~~~~~~~~~~~

    Lexers for Pascal family languages.

    :copyright: Copyright 2006-2019 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
iN(   t   Lexert
   RegexLexert   includet   bygroupst   wordst   usingt   thist   default(   t   get_bool_optt   get_list_opt(	   t   Textt   Commentt   Operatort   Keywordt   Namet   Stringt   Numbert   Punctuationt   Error(   t   Scanner(   t   Modula2Lexert   DelphiLexert   AdaLexerc          B   s   e  Z d  Z d Z d d d d g Z d d g Z d g Z dZ dZ dZ	 e
 d  Z e
 d! Z e
 d" Z e
 d# Z i d$d;6d%d56d&db6d'd6Z e
 d( Z e
 d) Z d  Z d  Z RS(*  sj  
    For `Delphi <http://www.borland.com/delphi/>`_ (Borland Object Pascal),
    Turbo Pascal and Free Pascal source code.

    Additional options accepted:

    `turbopascal`
        Highlight Turbo Pascal specific keywords (default: ``True``).
    `delphi`
        Highlight Borland Delphi specific keywords (default: ``True``).
    `freepascal`
        Highlight Free Pascal specific keywords (default: ``True``).
    `units`
        A list of units that should be considered builtin, supported are
        ``System``, ``SysUtils``, ``Classes`` and ``Math``.
        Default is to consider all of them builtin.
    t   Delphit   delphit   past   pascalt   objectpascals   *.pass   *.dprs   text/x-pascalt   absolutet   andt   arrayt   asmt   begint   breakt   caset   constt   constructort   continuet
   destructort   divt   dot   downtot   elset   endt   filet   fort   functiont   gotot   ift   implementationt   int	   inheritedt   inlinet	   interfacet   labelt   modt   nilt   nott   objectt   oft   ont   operatort   ort   packedt	   proceduret   programt   recordt   reintroducet   repeatt   selft   sett   shlt   shrt   stringt   thent   tot   typet   unitt   untilt   usest   vart   whilet   witht   xort   ast   classt   exceptt   exportst   finalizationt   finallyt   initializationt   ist   libraryt   propertyt   raiset	   threadvart   tryt   disposet   exitt   falset   newt   truet   aliast   cdeclt   exportt	   interruptt   nostackframet   registert   safecallt	   softfloatt   stdcallt   varargst   namet   dynamict   neart   virtualt   externalt   overridet	   assemblert   abstractt   cppdeclR   t   fart   far16t   forwardt   indext
   oldfpccallt   privatet	   protectedt	   publishedt   publict   ansichart
   ansistringt   boolt   booleant   bytet   byteboolt   cardinalt   chart   compt   currencyt   doublet   dwordt   extendedt   int64t   integert   iunknownt   longboolt   longintt   longwordt	   pansichart   pansistringt   pboolt   pbooleant   pbytet
   pbytearrayt	   pcardinalt   pchart   pcompt	   pcurrencyt   pdatet	   pdatetimet   pdoublet   pdwordt	   pextendedt   phandlet   pint64t   pintegert   plongintt	   plongwordt   pointert   ppointert	   pshortintt   pshortstringt   psinglet	   psmallintt   pstringt   pvariantt	   pwidechart   pwidestringt   pwordt
   pwordarrayt	   pwordboolt   realt   real48t   shortintt   shortstringt   singlet   smallintt   tclasst   tdatet	   tdatetimet   textfilet   thandlet   tobjectt   ttimet   variantt   widechart
   widestringt   wordt   wordboolt   abst   acquireexceptionobjectt   addrt
   ansitoutf8t   appendt   arctant   assertt   assignedt
   assignfilet   beginthreadt	   blockreadt
   blockwritet   chdirt   chrt   closet	   closefilet   comptocurrencyt   comptodoublet   concatt   copyt   cost   dect   deletet   doubletocompt	   endthreadt   enummodulest   enumresourcemodulest   eoft   eolnt   eraset
   exceptaddrt   exceptobjectt   excludet   expt   filepost   filesizet   fillchart   finalizet   findclasshinstancet   findhinstancet   findresourcehinstancet   flusht   fract   freememt	   get8087cwt   getdirt   getlasterrort   getmemt   getmemorymanagert   getmodulefilenamet   getvariantmanagert   haltt   hit   hight   incR   t
   initializet   insertt   intt   ioresultt   ismemorymanagersett   isvariantmanagersett   lengtht   lnt   lot   lowt   mkdirt   movet   oddt   olestrtostringt   olestrtostrvart   ordt
   paramcountt   paramstrt   pit   post   predt   ptrt
   pucs4charst   randomt	   randomizet   readt   readlnt
   reallocmemt   releaseexceptionobjectt   renamet   resett   rewritet   rmdirt   roundt   runerrort   seekt   seekeoft   seekeolnt	   set8087cwt	   setlengtht   setlinebreakstylet   setmemorymanagert	   setstringt
   settextbuft   setvariantmanagert   sint   sizeoft   slicet   sqrt   sqrtt   strt   stringofchart   stringtoolestrt   stringtowidechart   succt   swapt   trunct   truncatet   typeinfot   ucs4stringtowidestringt   unicodetoutf8t   uniquestringt   upcaset
   utf8decodet
   utf8encodet
   utf8toansit   utf8tounicodet   valt   vararrayredimt   varcleart   widecharlentostringt   widecharlentostrvart   widechartostringt   widechartostrvart   widestringtoucs4stringt   writet   writelnt   Systemt   abortt   addexitproct   addterminateproct   adjustlinebreakst   allocmemt   ansicomparefilenamet   ansicomparestrt   ansicomparetextt   ansidequotedstrt   ansiextractquotedstrt   ansilastchart   ansilowercaset   ansilowercasefilenamet   ansipost   ansiquotedstrt   ansisamestrt   ansisametextt   ansistrcompt   ansistricompt   ansistrlastchart   ansistrlcompt   ansistrlicompt   ansistrlowert
   ansistrpost   ansistrrscant   ansistrscant   ansistruppert   ansiuppercaset   ansiuppercasefilenamet	   appendstrt	   assignstrt   beept	   booltostrt   bytetocharindext   bytetocharlent   bytetypet   callterminateprocst   changefileextt
   charlengtht   chartobyteindext   chartobytelent
   comparememt
   comparestrt   comparetextt	   createdirt
   createguidt   currentyeart	   currtostrt
   currtostrft   datet   datetimetofiledatet   datetimetostrt   datetimetostringt   datetimetosystemtimet   datetimetotimestampt	   datetostrt	   dayofweekt
   decodedatet   decodedatefullyt
   decodetimet
   deletefilet   directoryexistst   diskfreet   disksizet
   disposestrt
   encodedatet
   encodetimet   exceptionerrormessaget   excludetrailingbackslasht   excludetrailingpathdelimitert   expandfilenamet   expandfilenamecaset   expanduncfilenamet   extractfiledirt   extractfiledrivet   extractfileextt   extractfilenamet   extractfilepatht   extractrelativepatht   extractshortpathnamet   fileaget	   filecloset
   filecreatet   filedatetodatetimet
   fileexistst   filegetattrt   filegetdatet   fileisreadonlyt   fileopent   filereadt
   filesearcht   fileseekt   filesetattrt   filesetdatet   filesetreadonlyt	   filewritet   finalizepackaget	   findcloset   findcmdlineswitcht	   findfirstt   findnextt   floattocurrt   floattodatetimet   floattodecimalt
   floattostrt   floattostrft   floattotextt   floattotextfmtt
   fmtloadstrt   fmtstrt   forcedirectoriest   formatt	   formatbuft
   formatcurrt   formatdatetimet   formatfloatt
   freeandnilt   getcurrentdirt   getenvironmentvariablet   getfileversiont   getformatsettingst   getlocaleformatsettingst   getmodulenamet   getpackagedescriptiont   getpackageinfot   gettimet   guidtostringt	   incamontht   includetrailingbackslasht   includetrailingpathdelimitert   incmontht   initializepackaget   interlockeddecrementt   interlockedexchanget   interlockedexchangeaddt   interlockedincrementt   inttohext   inttostrt   isdelimitert   isequalguidt
   isleapyeart   ispathdelimitert   isvalididentt	   languagest   lastdelimitert   loadpackaget   loadstrt	   lowercaset   msecstotimestampt   newstrt   nextcharindext   nowt   outofmemoryerrort	   quotedstrt   raiselastoserrort   raiselastwin32errort	   removedirt
   renamefilet   replacedatet   replacetimet   safeloadlibraryt   samefilenamet   sametextt   setcurrentdirt   showexceptiont   sleept   stralloct
   strbufsizet   strbytetypet   strcatt   strcharlengtht   strcompt   strcopyt
   strdisposet   strecopyt   strendt   strfmtt   stricompt   stringreplacet   stringtoguidt   strlcatt   strlcompt   strlcopyt   strlent   strlfmtt	   strlicompt   strlowert   strmovet   strnewt   strnextchart   strpast   strpcopyt	   strplcopyt   strpost   strrscant   strscant	   strtoboolt   strtobooldeft	   strtocurrt   strtocurrdeft	   strtodatet   strtodatedeft   strtodatetimet   strtodatetimedeft
   strtofloatt   strtofloatdeft   strtointt
   strtoint64t   strtoint64deft   strtointdeft	   strtotimet   strtotimedeft   struppert   supportst   syserrormessaget   systemtimetodatetimet   texttofloatt   timet   timestamptodatetimet   timestamptomsecst	   timetostrt   trimt   trimleftt	   trimrightt   tryencodedatet   tryencodetimet   tryfloattocurrt   tryfloattodatetimet   trystrtoboolt   trystrtocurrt   trystrtodatet   trystrtodatetimet   trystrtofloatt   trystrtointt   trystrtoint64t   trystrtotimet   unloadpackaget	   uppercaset   widecomparestrt   widecomparetextt
   widefmtstrt
   wideformatt   wideformatbuft   widelowercaset   widesamestrt   widesametextt   wideuppercaset
   win32checkt   wraptextt   SysUtilst   activateclassgroupt   allocatehwndt   bintohext   checksynchronizet   collectionsequalt   countgenerationst   deallocatehwndt	   equalrectt   extractstringst	   findclasst   findglobalcomponentt   getclasst   groupdescendantswitht   hextobint
   identtointt   initinheritedcomponentt
   inttoidentt   invalidpointt   isuniqueglobalcomponentnamet	   linestartt   objectbinarytotextt   objectresourcetotextt   objecttexttobinaryt   objecttexttoresourcet   pointsequalt   readcomponentrest   readcomponentresext   readcomponentresfilet   rectt   registerclasst   registerclassaliast   registerclassest   registercomponentst   registerintegerconstst   registernoicont   registernonactivext
   smallpointt   startclassgroupt   teststreamformatt   unregisterclasst   unregisterclassest   unregisterintegerconstst   unregistermoduleclassest   writecomponentresfilet   Classest   arccost   arccosht   arccott   arccotht   arccsct   arccscht   arcsect   arcsecht   arcsint   arcsinht   arctan2t   arctanht   ceilt   comparevaluet   cosecantt   cosht   cott   cotant   cotht   csct   cscht
   cycletodegt   cycletogradt
   cycletoradt
   degtocyclet	   degtogradt   degtoradt   divmodt   doubledecliningbalancet   ensureranget   floort   frexpt   futurevaluet   getexceptionmaskt   getprecisionmodet   getroundmodet   gradtocyclet	   gradtodegt	   gradtoradt   hypott   inranget   interestpaymentt   interestratet   internalrateofreturnt   intpowert
   isinfinitet   isnant   iszerot   ldexpt   lnxp1t   log10t   log2t   lognt   maxt   maxintvaluet   maxvaluet   meant   meanandstddevt   mint   minintvaluet   minvaluet   momentskewkurtosist   netpresentvaluet   normt   numberofperiodst   paymentt   periodpaymentt   polyt
   popnstddevt   popnvariancet   powert   presentvaluet
   radtocyclet   radtodegt	   radtogradt   randgt   randomranget   roundtot	   samevaluet   sect   secantt   secht   setexceptionmaskt   setprecisionmodet   setroundmodet   signt   simpleroundtot   sincost   sinht   slndepreciationt   stddevt   sumt   sumintt   sumofsquarest   sumsandsquarest   syddepreciationt   tant   tanht   totalvariancet   variancet   Matht   aht   alt   axt   bht   blt   bpt   bxt   cht   clt   cr0t   cr1t   cr2t   cr3t   cr4t   cst   cxt   dht   dit   dlt   dr0t   dr1t   dr2t   dr3t   dr4t   dr5t   dr6t   dr7t   dst   dxt   eaxt   ebpt   ebxt   ecxt   edit   edxt   est   esit   espt   fst   gst   mm0t   mm1t   mm2t   mm3t   mm4t   mm5t   mm6t   mm7t   sit   spt   sst   st0t   st1t   st2t   st3t   st4t   st5t   st6t   st7t   xmm0t   xmm1t   xmm2t   xmm3t   xmm4t   xmm5t   xmm6t   xmm7t   aaat   aadt   aamt   aast   adct   addt   arplt   boundt   bsft   bsrt   bswapt   btt   btct   btrt   btst   callt   cbwt   cdqt   clct   cldt   clit   cltst   cmct   cmovat   cmovaet   cmovbt   cmovbet   cmovct   cmovcxzt   cmovet   cmovgt   cmovget   cmovlt   cmovlet   cmovnat   cmovnaet   cmovnbt   cmovnbet   cmovnct   cmovnet   cmovngt   cmovnget   cmovnlt   cmovnlet   cmovnot   cmovnpt   cmovnst   cmovnzt   cmovot   cmovpt   cmovpet   cmovpot   cmovst   cmovzt   cmpt   cmpsbt   cmpsdt   cmpswt   cmpxchgt
   cmpxchg486t	   cmpxchg8bt   cpuidt   cwdt   cwdet   daat   dast   emmst   entert   hltt   ibtst   icebpt   idivt   imult   insbt   insdt   inswt   int01t   int03t   int1t   int3t   intot   invdt   invlpgt   irett   iretdt   iretwt   jat   jaet   jbt   jbet   jct   jcxzt   jet   jecxzt   jgt   jget   jlt   jlet   jmpt   jnat   jnaet   jnbt   jnbet   jnct   jnet   jngt   jnget   jnlt   jnlet   jnot   jnpt   jnst   jnzt   jot   jpt   jpet   jpot   jst   jzt   lahft   lart   lcallt   ldst   leat   leavet   lest   lfst   lgdtt   lgst   lidtt   ljmpt   lldtt   lmswt   loadallt
   loadall286t   lockt   lodsbt   lodsdt   lodswt   loopt   loopet   loopnet   loopnzt   loopzt   lslt   lsst   ltrt   movt   movdt   movqt   movsbt   movsdt   movswt   movsxt   movzxt   mult   negt   nopt   outt   outsbt   outsdt   outswt   popt   popat   popadt   popawt   popft   popfdt   popfwt   pusht   pushat   pushadt   pushawt   pushft   pushfdt   pushfwt   rclt   rcrt   rdmsrt   rdpmct   rdshrt   rdtsct   rept   repet   repnet   repnzt   repzt   rett   retft   retnt   rolt   rort   rsdct   rsldtt   rsmt   sahft   salt   salct   sart   sbbt   scasbt   scasdt   scaswt   setat   setaet   setbt   setbet   setct   setcxzt   setet   setgt   setget   setlt   setlet   setnat   setnaet   setnbt   setnbet   setnct   setnet   setngt   setnget   setnlt   setnlet   setnot   setnpt   setnst   setnzt   setot   setpt   setpet   setpot   setst   setzt   sgdtt   shldt   shrdt   sidtt   sldtt   smit   smintt   smintoldt   smswt   stct   stdt   stit   stosbt   stosdt   stoswt   subt   svdct   svldtt   svtst   syscallt   sysentert   sysexitt   sysrett   testt   ud1t   ud2t   umovt   verrt   verwt   waitt   wbinvdt   wrmsrt   wrshrt   xaddt   xbtst   xchgt   xlatt   xlatbc         K   s   t  j |  |  t   |  _ t | d t  rD |  j j |  j  n  t | d t  rl |  j j |  j  n  t | d t  r |  j j |  j	  n  t   |  _
 x: t | d t |  j   D] } |  j
 j |  j |  q Wd  S(   Nt   turbopascalR   t
   freepascalt   units(   R    t   __init__RF   t   keywordsR   t   Truet   updatet   TURBO_PASCAL_KEYWORDSt   DELPHI_KEYWORDSt   FREE_PASCAL_KEYWORDSt   builtinsR	   t   listt   BUILTIN_UNITS(   RE   t   optionsRM   (    (    s5   lib/python2.7/site-packages/pygments/lexers/pascal.pyR/  -  s    "c         c   so  t  | t j t j Bt j B } d g } t } t } t } t } t } t }	 t   }
 d d g } x| j sjt } | d d k r| j	 d  r t
 } q,| j	 d  r | j j d  r t j } qt j } q,| j	 d  r t j } q,| j	 d  r&t } |	 r| j d	 k rt }	 qq,| j	 d
  rt } t } | sM| r| j d k ro| d c d 7<q| j d k r| d c d 8<q| j d k r| d c d 7<q| j d k r| d c d 8<qqq,| j	 d  r#| j j   } | d k rt j j } q| |  j k rt } | s5| r| |  j k r| d d k r| d d k rt } t } d d g } t   }
 n  | d+ k rt }	 q | d k r| j d  q | d k rt } t } q | d, k r t } t } q q| r| |  j k rt j } q| r7| d- k r7t j } t } q| rj| j d  rXt j } q t j } t } q| rt j  } t } q|	 rt j! } |
 j" | j j    q| |
 k rt j! } q| |  j# k rt j$ } q| |  j% k rt j } q| r| |  j& k rt j } qt } q,| j	 d  rHt' } | j d  q,| j	 d   rct' j( } q,| j	 d!  r~t) j* } q,| j	 d"  rt) j+ } q,| j	 d#  rt) j, } q,t- |  d k r| j.   n  | j/   nL| d d k r\| j	 d$  rt' j0 } q,| j	 d  r-t' } | j.   q,| j	 d%  rEt' } q,| j/   | j.   n| d d k r,| j	 d  rt
 } q,| j	 d&  rt } | j.   q,| j	 d  r| j j d  rt j } q)t j } q,| j	 d  rt j } q,| j	 d  rt' } | j d  q,| j	 d'  r:t j! } q,| j	 d  r| j j   } | |  j1 k rpt } q)| |  j2 k rt j } q)t } q,| j	 d(  rt } q,| j	 d
  rt } q,| j	 d!  rt) j* } q,| j	 d"  rt) j+ } q,| j	 d#  rt) j, } q,| j/   | j.   n  | j j3   rM| j d) k } n  | j4 | | j pbd* f Vqe Wd  S(.   Nt   initiali    is   \s+s   \{.*?\}|\(\*.*?\*\)t   $s   //.*?$s   [-+*\/=<>:;,.@\^]t   ;s   [\(\)\[\]]+t   (i   t   )t   [t   ]s   [A-Za-z_][A-Za-z_0-9]*t   resultR6   R/   R   R]   R@   R=   R.   R$   R&   R  RJ  s   \s*\.\s*t   'RI   s   \#(\d+|\$[0-9A-Fa-f]+)s   \$[0-9A-Fa-f]+s   \d+(?![eE]|\.[^.])s&   \d+(\.\d+([eE][+-]?\d+)?|[eE][+-]?\d+)s   ''s   [^']*R+   s   @@[A-Za-z_][A-Za-z_0-9]*s   [-+*\/=<>:;,.@\^]+t   .t    (   R6   R/   (   R@   R=   R.   R$   R&   (   R  RJ  (5   R   t   ret   DOTALLt	   MULTILINEt
   IGNORECASEt   FalseRF   t   eosR   t   scanR
   t   matcht
   startswithR   t   Preproct	   Multilinet   SingleR   R   t   lowerR   t   Builtint   PseudoR0  R   t   BLOCK_KEYWORDSR1  R   t   FUNCTION_MODIFIERSR  t   Classt   Functiont   Propertyt   LabelR!  t   BUILTIN_TYPESt   Typet
   DIRECTIVESR6  R   t   CharR   t   Hext   Integert   Floatt   lenR  t   get_chart   Escapet   ASM_INSTRUCTIONSt   ASM_REGISTERSt   stript	   start_pos(   RE   t   textt   scannert   stackt   in_function_blockt   in_property_blockt   was_dott   next_token_is_functiont   next_token_is_propertyt   collect_labelst   block_labelst   brace_balancet   tokent   lowercase_name(    (    s5   lib/python2.7/site-packages/pygments/lexers/pascal.pyt   get_tokens_unprocessed:  s2    					 										
					
(8   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   Rb   Rc   Rd   Re   (   R    RU   R#   R$   R&   R+   RX   R.   R1   RZ   R6   R\   R=   R@   RA   R]   RB   R_   RL   RM   RO   RP   (   Rf   Rg   Rh   R4   Ri   Rj   R   Rk   Rl   Rm   Rn   Ro   Rp   Rq   Rr   Rs   Rt   Ru   Rv   (   R   Rw   Rv   Rx   R   Ry   Rz   R{   R|   R}   R~   R   R   R   (G   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   RI   R   R   R   R   R   R   R   R   R   R   R   R   (   R   R   R   R   R   R   R   R   R   R   R   R   R!   R   R   R   R   R   R   R   R%   R   R   R   R   Ra   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
  Rd   R  R  R  R  R  R  R  R  R  R  R  R  R  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  (   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  (,   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  (d   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  (C   R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R   R  R  R  R  R  R  R  R  R	  R
  R  R  R  R  R  R  R  R  R  R  R  R  R  R  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^  R_  R`  Ra  Rb  Rc  Rd  R2   R   Re  Rf  Rg  R  Rh  Ri  Rj  Rk  Rl  Rm  Rn  Ro  Rp  Rq  Rr  Rs  Rt  Ru  Rv  Rw  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  R9   R>   R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R   R  R  R  R  R  R  RG   R  RH   R  R	  R
  R  R  R  R  R  R  R  R  R  R  R1  R  R  R  R  R  R  R  R  R  R  R  R   R!  R"  R#  R$  R%  R&  R'  R(  R)  R*  R+  RS   (   t   __name__t
   __module__t   __doc__Rp   t   aliasest	   filenamest	   mimetypesR3  R4  R5  RF   RT  RU  R\  RZ  R8  Re  Rd  R/  Ru  (    (    (    s5   lib/python2.7/site-packages/pygments/lexers/pascal.pyR      s  	            	   	  	            	                                                                                                                             
       	                                     		c        Q   B   s  e  Z d  Z d Z d d d g Z d d d g Z d g Z e j e j	 BZ
 i d	 e f d
 e j f d	 e f d e j d f d e e j e e j  d f d e j f d e e j e  f d e e j e  d f d e e j e e j  f d e j f e d d0 d1 e j f d2 e j f d3 e j f d4 e j d4 f d5 e j d6 f d7 e e j e  d8 f d9 e e j e e e e j  f d: e j f d; e e j e e e e j  f e d dw d1 d0 d1 e j f dx e f e dy  e dz  d{ e j f d| e e e e    f d} e f d~ e f d e f g d 6d e! j" f d e! j# f d e! j$ f g dz 6d e e e j%  f g dy 6d e d f d e d f d e j d f d e j& f e d  g d 6d e j f d e j& f d e f d e d f g d 6d e d f d e d f d e j f d5 e j d f d e j d f d e e j e  d f e d  g d 6d e d f d e e j e e j  f e d  g d6 6d e j d f e d  g d 6d e j d f e' d  g d8 6d e d f d e j( f d e f d e j f e d  g d 6dF e j f d e j f dW e j d f d e d f d e d f d e j) f e d  g d4 6d e e j( e e  f d e f d e d f e d  g d 6Z* RS(   s9   
    For Ada source code.

    .. versionadded:: 1.3
    t   Adat   adat   ada95t   ada2005s   *.adbs   *.adss   *.adas
   text/x-adas   [^\S\n]+s   --.*?\ns   function|procedure|entryt
   subprograms   (subtype|type)(\s+)(\w+)t   type_defs   task|protecteds   (subtype)(\s+)s
   (end)(\s+)R+   s   (pragma)(\s+)(\w+)s   (true|false|null)\bt   Addresst   Bytet   Booleant	   Charactert
   Controlledt   Countt   Cursort   Durationt	   File_Modet	   File_TypeR`  t	   GeneratorR_  t
   Long_Floatt   Long_Integert   Long_Long_Floatt   Long_Long_Integert   Naturalt   Positivet   Reference_Typet   Short_Floatt   Short_Integert   Short_Short_Floatt   Short_Short_IntegerR   t   Wide_Charactert   Wide_Stringt   suffixs   \bs,   (and(\s+then)?|in|mod|not|or(\s+else)|rem)\bs   generic|privatet   packages   array\bt	   array_defs   (with|use)(\s+)t   imports   (\w+)(\s*)(:)(\s*)(constant)s   <<\w+>>s0   (\w+)(\s*)(:)(\s*)(declare|begin|loop|for|while)RM  R   Rw   t   acceptt   accesst   aliasedt   allR   t   atR    t   bodyR"   t   constantt   declaret   delayt   deltat   digitsR(   R*   t   elsift   entryt	   exceptionRb   R5   R-   R/   R0   R[   t   limitedR  Rd   t   nullR;   R>   t   othersR  t
   overridingt   pragmaR   R^   t   rangeRB   t   renamest   requeuet   returnt   reverset   selectt   separatet   subtypet   synchronizedt   taskt   taggedt	   terminateRJ   RL   RN   t   whenRQ   RS   t   prefixs   "[^"]*"t	   attributet   numberss   '[^']'s   (\w+)(\s*|[(,])s   (<>|=>|:=|[()|:;,.'])s
   [*<>+=/&-]s   \n+t   roots   [0-9_]+#[0-9a-f]+#s   [0-9_]+\.[0-9_]*s   [0-9_]+s   (')(\w+)s   \(s   #popt   formal_partR<  s   is\bs   "[^"]+"|\w+s   (if|case|record|loop|select)s   "[^"]+"|[\w.]+s   \s+s   with|and|uses   record\bt
   record_defs   (null record)(;)s   (\w+)(\s+)(range)s
   end records   [\w.]+s   \)s   \w+s   ,|:[^=]s   (in|not|null|out|access)\bs   is\s+new|renamest   package_instantiations   ([\w.]+)s   ("[^"]+"|\w+)(\s+)(=>)s   [\w.\'"](   R  R  R  R  R  R  R  R  R  R  R`  R  R_  R  R  R  R  R  R  R  R  R  R  R  R   R  R  (<   RM  R   Rw   R  R  R  R  R   R  R    R  R"   R  R  R  R  R  R(   R*   R  R+   R  R  Rb   R5   R-   R/   R0   R[   R  R  Rd   R  R;   R>   R  R  R  R  R   R^   R  RB   R  R  R  R  R  R  R  R  R  R  R  RJ   RL   RN   R  RQ   RS   (   s   #popR  (   s   #popR  (+   Rv  Rw  Rx  Rp   Ry  Rz  R{  RE  RG  RH  t   flagsR
   R   RP  R   t   DeclarationR   R[  t   ReservedRN  t   ConstantR   R   t   Wordt	   NamespaceR   R   RY  R   R   R  R   R   R   R^  R`  R_  t	   AttributeRW  R   t   VariableRV  t   tokens(    (    (    s5   lib/python2.7/site-packages/pygments/lexers/pascal.pyR     s   			     	        									(   Rx  RE  t   pygments.lexerR    R   R   R   R   R   R   R   t   pygments.utilR   R	   t   pygments.tokenR
   R   R   R   R   R   R   R   R   t   pygments.scannerR   t   pygments.lexers.modula2R   t   __all__R   R   (    (    (    s5   lib/python2.7/site-packages/pygments/lexers/pascal.pyt   <module>
   s   :@ 