
W[Tc           @   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 m Z m Z m Z m Z m Z 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.perl
    ~~~~~~~~~~~~~~~~~~~~

    Lexers for Perl and related languages.

    :copyright: Copyright 2006-2014 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
iN(   t
   RegexLexert   ExtendedRegexLexert   includet   bygroupst   usingt   thist   defaultt   words(   t   Textt   Commentt   Operatort   Keywordt   Namet   Stringt   Numbert   Punctuation(   t   shebang_matchest	   PerlLexert
   Perl6Lexerc           B   s  e  Z d  Z d Z d d g Z d d d g Z d d g Z e j e j	 BZ
 i d	 e j d
 f d e j d
 f d e j d
 f d e j d
 f d e j d
 f d e j d
 f d e j d
 f d e j d
 f d e j d
 f d e j d
 f g
 d 6d e j f d e j f e dGd1 d2 e f d3 e e e e e e e  d4 f d5 e j f d6 e j f d7 e j f d8 e j f d9 e j f d: e j f d; e j d f d< e j d f d= e j d f d> e j d f d? e j f d@ e j d f dA e j f dB e f e dHd1 d2 e j f de j j f de f de j df de j j f de j j f d	e j d
f de j f de j f de j  f de j! f de j! f de j" f de f de f de j# f de j f de j$ df de j$ df de j$ df de j$ df de j$ f de df d e d!f d"e f d#e f d$e f d%e d&f g. d'6d(e j% d
 f d)e j% f g d4 6dB e f d*e d
 f d+e d
 f d,e j& f d-e j d
 f g d
6d,e j& f d-e d
 f d.e j' d
 f d/e d
 f g d&6d0e j& d
 f g d6d1e j( f dB e f d2e e e  f d3e d
 f d4e d
 f g d!6d5e j$ f d6e j$ f d*e j$ df d7e j$ d
 f d8e j$ f g d6d9e j$ f d6e j$ f d:e j$ df d;e j$ d
 f d<e j$ f g d6d=e j$ f d6e j$ f d>e j$ df d?e j$ d
 f d@e j$ f g d6dAe j$ f d6e j$ f dBe j$ df dCe j$ d
 f dDe j$ f g d6dEe j d
 f g d6Z) dF  Z* RS(I  s8   
    For `Perl <http://www.perl.org>`_ source code.
    t   Perlt   perlt   pls   *.pls   *.pms   *.ts   text/x-perls   application/x-perls"   /(\\\\|\\[^\\]|[^\\/])*/[egimosx]*s   #pops"   !(\\\\|\\[^\\]|[^\\!])*![egimosx]*s   \\(\\\\|[^\\])*\\[egimosx]*s$   \{(\\\\|\\[^\\]|[^\\}])*\}[egimosx]*s"   <(\\\\|\\[^\\]|[^\\>])*>[egimosx]*s%   \[(\\\\|\\[^\\]|[^\\\]])*\][egimosx]*s$   \((\\\\|\\[^\\]|[^\\)])*\)[egimosx]*s"   @(\\\\|\\[^\\]|[^\\@])*@[egimosx]*s"   %(\\\\|\\[^\\]|[^\\%])*%[egimosx]*s$   \$(\\\\|\\[^\\]|[^\\$])*\$[egimosx]*s   balanced-regexs   \#.*?$s   ^=[a-zA-Z0-9]+\s+.*?\n=cutt   caset   continuet   dot   elset   elsift   fort   foreacht   ift   lastt   myt   nextt   ourt   redot   resett   thent   unlesst   untilt   whilet   uset   printt   newt   BEGINt   CHECKt   INITt   ENDt   returnt   suffixs   \bs!   (format)(\s+)(\w+)(\s*)(=)(\s*\n)t   formats$   (eq|lt|gt|le|ge|ne|not|and|or|cmp)\bs:   s/(\\\\|\\[^\\]|[^\\/])*/(\\\\|\\[^\\]|[^\\/])*/[egimosx]*s.   s!(\\\\|\\!|[^!])*!(\\\\|\\!|[^!])*![egimosx]*s+   s\\(\\\\|[^\\])*\\(\\\\|[^\\])*\\[egimosx]*s:   s@(\\\\|\\[^\\]|[^\\@])*@(\\\\|\\[^\\]|[^\\@])*@[egimosx]*s:   s%(\\\\|\\[^\\]|[^\\%])*%(\\\\|\\[^\\]|[^\\%])*%[egimosx]*s   s\{(\\\\|\\[^\\]|[^\\}])*\}\s*s   s<(\\\\|\\[^\\]|[^\\>])*>\s*s   s\[(\\\\|\\[^\\]|[^\\\]])*\]\s*s   s\((\\\\|\\[^\\]|[^\\)])*\)\s*s&   m?/(\\\\|\\[^\\]|[^\\/\n])*/[gcimosx]*s   m(?=[/!\\{<\[(@%$])s6   ((?<==~)|(?<=\())\s*/(\\\\|\\[^\\]|[^\\/])*/[gcimosx]*s   \s+t   abst   acceptt   alarmt   atan2t   bindt   binmodet   blesst   callert   chdirt   chmodt   chompt   chopt   chownt   chrt   chroott   closet   closedirt   connectt   cost   cryptt   dbmcloset   dbmopent   definedt   deletet   diet   dumpt   eacht   endgrentt
   endhostentt	   endnetentt   endprotoentt   endpwentt
   endserventt   eoft   evalt   exect   existst   exitt   expt   fcntlt   filenot   flockt   forkt   formlinet   getct   getgrentt   getgrgidt   getgrnamt   gethostbyaddrt   gethostbynamet
   gethostentt   getlogint   getnetbyaddrt   getnetbynamet	   getnetentt   getpeernamet   getpgrpt   getppidt   getpriorityt   getprotobynamet   getprotobynumbert   getprotoentt   getpwentt   getpwnamt   getpwuidt   getservbynamet   getservbyportt
   getserventt   getsocknamet
   getsockoptt   globt   gmtimet   gotot   grept   hext   importt   indext   intt   ioctlt   joint   keyst   killt   lct   lcfirstt   lengtht   linkt   listent   localt	   localtimet   logt   lstatt   mapt   mkdirt   msgctlt   msggett   msgrcvt   msgsndt   not   octt   opent   opendirt   ordt   packt   packaget   pipet   popt   post   printft	   prototypet   pusht	   quotemetat   randt   readt   readdirt   readlinet   readlinkt   readpipet   recvt   reft   renamet   requiret   reverset	   rewinddirt   rindext   rmdirt   scalart   seekt   seekdirt   selectt   semctlt   semgett   semopt   sendt   setgrentt
   sethostentt	   setnetentt   setpgrpt   setpriorityt   setprotoentt   setpwentt
   setserventt
   setsockoptt   shiftt   shmctlt   shmgett   shmreadt   shmwritet   shutdownt   sint   sleept   sockett
   socketpairt   sortt   splicet   splitt   sprintft   sqrtt   srandt   statt   studyt   substrt   symlinkt   syscallt   sysopent   sysreadt   sysseekt   systemt   syswritet   tellt   telldirt   tiet   tiedt   timet   timest   trt   truncatet   uct   ucfirstt   umaskt   undeft   unlinkt   unpackt   unshiftt   untiet   utimet   valuest   vect   waitt   waitpidt	   wantarrayt   warnt   writes+   ((__(DATA|DIE|WARN)__)|(STD(IN|OUT|ERR)))\bs'   <<([\'"]?)([a-zA-Z_]\w*)\1;?\n.*?\n\2\nt   __END__s   end-parts   \$\^[ADEFHILMOPSTWX]s(   \$[\\\"\[\]'&`+*.,;=%~?@$!<>(^|/-](?!\w)s   [$@%#]+t   varnames   0_?[0-7]+(_[0-7]+)*s   0x[0-9A-Fa-f]+(_[0-9A-Fa-f]+)*s   0b[01]+(_[01]+)*s?   (?i)(\d*(_\d*)*\.\d+(_\d*)*|\d+(_\d*)*\.\d+(_\d*)*)(e[+-]?\d+)?s   (?i)\d+(_\d*)*e[+-]?\d+(_\d*)*s
   \d+(_\d+)*s   '(\\\\|\\[^\\]|[^'\\])*'s   "(\\\\|\\[^\\]|[^"\\])*"s   `(\\\\|\\[^\\]|[^`\\])*`s   <([^\s>]+)>s   (q|qq|qw|qr|qx)\{s	   cb-strings   (q|qq|qw|qr|qx)\(s	   rb-strings   (q|qq|qw|qr|qx)\[s	   sb-strings   (q|qq|qw|qr|qx)\<s	   lt-strings    (q|qq|qw|qr|qx)([\W_])(.|\n)*?\2s
   package\s+t
   modulenames   sub\s+t   funcnames=   (\[\]|\*\*|::|<<|>>|>=|<=>|<=|={3}|!=|=~|!~|&&?|\|\||\.{1,3})s   [-+/*%=<>&^|!\\~]=?s   [()\[\]:;,<>/?{}]s   (?=\w)t   namet   roots   \.\ns   [^\n]*\ns   \{s   \)|,s   \w+::s   [\w:]+s   [A-Z_]+(?=\W)s   (?=\W)s   [a-zA-Z_]\w*s   [a-zA-Z_]\w*[!?]?s   (\([$@%]*\))(\s*)t   ;s   .*?\{s   \\[{}\\]s   \\s   \}s   [^{}\\]+s   \\[()\\]s   \(s   \)s   [^()]+s
   \\[\[\]\\]s   \[s   \]s   [^\[\]]+s   \\[<>\\]s   \<s   \>s   [^<>]+s   .+c         C   s-   t  |  d  r t St j d |   r) d Sd  S(   NR   s   (?:my|our)\s+[$@%(]g?(   R   t   Truet   ret   search(   t   text(    (    s8   /usr/lib/python2.7/dist-packages/pygments/lexers/perl.pyt   analyse_text   s    (   R   R   R   s   elseR   R   R   R   R   R   s   nextR!   R"   s   resetR$   R%   R&   R'   R(   s   prints   newR+   R,   R-   R.   R/   (   s   absR3   s   alarmR5   R6   R7   R8   R9   s   chdirs   chmodR<   R=   s   chowns   chrs   chroots   closeRB   RC   R   RD   RE   RF   RG   RH   RI   RJ   s   dumpRL   RM   RN   RO   RP   RQ   RR   s   eofs   evals   execs   existss   exitRX   RY   s   filenoR[   s   forks   formatR]   R^   R_   R`   Ra   Rb   Rc   Rd   s   getloginRf   Rg   Rh   Ri   s   getpgrps   getppidRl   Rm   Rn   Ro   Rp   s   getpwnams   getpwuidRs   Rt   Ru   Rv   Rw   Rx   Ry   Rz   R{   s   hexR}   s   indexs   intR   s   joins   keyss   killR   R   R   R   s   linkR   R   R   s   logs   lstats   maps   mkdirR   R   R   R   R   s   nexts   nos   octs   openR   s   ordR!   R   s   packages   pipes   pops   posR   R   R   R   R   s   readR   s   readlines   readlinkR   R   R"   s   refs   renameR   s   reverseR   s   rindexs   rmdirR   s   seekR   R   R   R   R   s   sendR   R   R   s   setpgrpR   R   R   R   R   R   R   R   R   R   R   R   R   R   R   s   sortR   s   splitR   R   R   s   statR   R   s   symlinkR   R   R   R   s   systemR   s   tellR   R   R   R   s   timesR   s   truncateR   R   s   umaskR   s   unlinkR   R   R   s   utimes   valuesR   s   waits   waitpidR   s   warns   write(+   t   __name__t
   __module__t   __doc__R   t   aliasest	   filenamest	   mimetypesR   t   DOTALLt	   MULTILINEt   flagsR   t   RegexR	   t   Singlet	   MultilineR   R   R   R   R   R   R
   t   Wordt   Builtint   Pseudot   Preproct   Variablet   GlobalR   t   Octt   Hext   Bint   Floatt   Integert   Backtickt   Othert   Interpolt	   Namespacet   Constantt   Functiont   tokensR   (    (    (    s8   /usr/lib/python2.7/dist-packages/pygments/lexers/perl.pyR      s     							                         									c           B   s"	  e  Z d  Z d Z d d g Z d d d d d d	 d
 d d d d g Z d d g Z e j e j	 Be j
 BZ d Z dZ dZ dZ dZ i dFdG6dHdI6dJdK6dLdM6dNdO6dPdQ6dRdS6dTdU6dVdW6dVdX6dVdY6dZd[6dZd\6dZd]6d^d_6d`da6dbdc6ddde6dfdg6dhdi6djdk6dldm6dndo6dpdq6drds6dtdu6dvdw6dxdy6dzd{6d|d}6d~d6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6d d6dd6dd6dd6dd	6d
d6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6d d!6d"d#6d$d%6d&d'6d(d)6d*d+6d,d-6d.d/6d0d16d2d36d4d56d6d76d8d96d:d;6d<d=6d>d?6d@dA6dBdC6dDdE6dFdG6dHdI6dJdK6dLdM6dNdO6dPdQ6dRdS6dTdU6dVdW6dXdY6dZd[6d\d]6d^d_6d`da6dbdc6ddde6dfdg6dhdi6djdk6dldm6dndo6dpdq6drds6dtdu6dvdw6dxdy6dzd{6d|d}6d~d6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6Z d ddd Z d  Z d  Z d  Z d  Z i ddj e  de e j  f de j f de j f de j f de j f de de e e  df de de de e e  df de e e e e  f e e e  e f e e e dde j  f e e e  e j  f de de j! f de j! j" f de j! j" f de de j! j" f de j! f de e#  f de$ j% f de$ j& f de$ j' f de$ j( f de$ j( f de$ j) f de# j* f de# j* f de f de e# j*  f de# j* f de# f e e  e+ f de de f de# f de# f g! d6e, d de f de f de f g d6e, d de df de f g d6ddj e  de e  df e- d g d6de df de. e/  f de# j* f de# j* f de# j* f de j f de f de# j* f g dy 6Z0 d  Z1 d  Z2 RS(  sV   
    For `Perl 6 <http://www.perl6.org>`_ source code.

    .. versionadded:: 2.0
    t   Perl6t   perl6t   pl6s   *.pls   *.pms   *.nqps   *.p6s   *.6pls   *.p6ls   *.pl6s   *.6pms   *.p6ms   *.pm6s   *.ts   text/x-perl6s   application/x-perl6s   ['\w:-]R+   t   CATCHR,   t   CONTROLR.   t   ENTERt   FIRSTR-   t   KEEPt   LASTt   LEAVEt   NEXTt   POSTt   PREt   STARTt   TEMPt   UNDOt   ast   assoct   asynct   augmentt   binaryt   breakt   butt   cachedt   categoryt   classt   constantt   contendR   t   copyt   deepR   t   defequivt   deferRJ   R   R   R   t   enumt   equivRW   t   exportt   failt   fatalR   t   gathert   givenRz   t   grammart   handlest   hasR   t   inlinet   irst   isR   t   leavet   lett   liftt   loopt   loosert   macrot   maket   maybet   methodt   modulet   multiR   R    t   oft   ofst   onlyt   oot   orsR!   R   t   parsedt   prect   protot   readonlyR"   R   t   regext   reparsedt   repeatR   t   requiredR/   t   returnst   rolet   rulet   rwt   selft   slangt   statet   subt	   submethodt   subsett	   supersedet   taket   tempt   tightert   tokent   trustst   tryt   unaryR%   R&   R(   R   t   whent   whereR'   t   willt   ACCEPTSt   HOWt   REJECTSt   VARt   WHATt   WHENCEt   WHEREt   WHICHt   WHOR2   t   acost   acosect   acosecht   acosht   acotant   acotanht   allt   anyt   approxt   arityt   asect   asecht   asint   asinht   assumingt   atanR5   t   atanht   attrR8   t   bodyt   byt   bytesR9   t   callsamet   callwitht   cant
   capitalizet   catt   ceilingt   charsR;   R<   R=   R?   R@   t	   circumfixt   cist   classifyt   cloneRA   t   cmp_okt   codest   combRC   t   containst   contextRD   t   cosect   cosecht   cosht   cotant   cotanht   countRH   RI   t   diagt   dies_okt   doest   eRL   t   eagert   elemst   endRS   RT   t   eval_dies_okt   eval_elsewheret   eval_lives_okt   evalfileRV   RX   t   firstt   flipt   floort   flunkt   flusht   fmtt
   force_todoR\   t   fromR^   t   gethostRe   Ri   t   getpwRy   t   graphsR{   t   hintst   hypert   imR~   t   infixt   invertt	   is_approxt	   is_deeplyt   isat   isa_okt   isntt   iteratorR   t   keyR   R   t   kvt   lastcallt   lazyR   R   t   liket   linesR   t   lives_okR   R   t   log10R   t   maxt   mint   minmaxR   R*   t   nextsamet   nextwitht   nfct   nfdt   nfkct   nfkdt	   nok_errort   noncet   nonet	   normalizet   nott   nothingt   okt   oncet   oneR   R   t   operatorR   t   p5chompt   p5chopR   t   pairt   pairst   passR   t   pit   pickt   plant   plan_okt   polarR   R   t   postcircumfixt   postfixt   predt   prefixR)   R   R   t   quasiR   R   R   R   R   R   t   reduceR   t   rewindR   R   t   rootst   roundt
   roundrobint   runt
   runinsteadt
   sameaccentt   samecaset   sayt   sect   sechR   t   shapeR   t   signt	   signatureR   t   sinht   skipt	   skip_restR   t   slurpR   R   R   R   R   R   t   strandt   substR   t   succt   sumR   t   tant   tanht	   throws_okR   R   t   tot   todot   trimt   trim_endt
   trim_startt   trueR   R   R   R   t   undefinet   uniqt   unlikeR   R   t   unpolarR   t   unwrapt   use_okt   valueR   R   t
   version_ltt   voidR   t   wantt   wrapR   t   zipt   Abstractiont   Anyt   AnyChart   Arrayt   Associativet   Bagt   Bitt   Blobt   Blockt   Boolt   Buft   Bytet   Callablet   Capturet   Chart   Classt   Codet	   Codepointt
   Comparatort   Complext
   Decreasingt	   Exceptiont   Failuret   Falset   Grammart   Graphemet   Hasht   IOt
   Increasingt   Intt   Junctiont   KeyBagt   KeyExtractort   KeyHasht   KeySett   KitchenSinkt   Listt   Macrot   Mappingt   Matcht   Matchert   Methodt   Modulet   Numt   Objectt   Orderedt   Orderingt   OrderingPairt   Packaget   Pairt
   Positionalt   Proxyt   Ranget   RatR  t   Rolet   Routinet   Scalart   Seqt   Sett	   Signaturet   Strt   StrLent   StrPost   Subt	   SubmethodR   t   UIntt   Undeft   Versiont   Voidt   Whatevert   bitt   boolt   buft   buf1t   buf16t   buf2t   buf32t   buf4t   buf64t   buf8t   complexR   t   int1t   int16t   int2t   int32t   int4t   int64t   int8t   numt   ratt   rat1t   rat16t   rat2t   rat32t   rat4t   rat64t   rat8t   uintt   uint1t   uint16t   uint2t   uint32t   uint4t   uint64t   uint8t   utf16t   utf32t   utf8t   Xt   Zt   aftert   alsot   andt   andthent   beforet   cmpt   divt   eqt   eqvt   extrat   fft   ffft   get   gtt   let   legt   ltt   mt   mmt   modt   net   ort   orelset   rxt   sR   t   xt   xort   xxs   ++s   --s   **t   !t   +t   -t   ~t   ?t   |s   ||s   +^s   ~^s   ?^t   ^t   *t   /t   %s   %%s   +&s   +<s   +>s   ~&s   ~<s   ~>s   ?&t   gcdt   lcms   +|s   ~|s   ?|t   &s   <=>s   ..s   ..^s   ^..s   ^..^s   !=s   ==t   <s   <=t   >s   >=s   ~~s   ===s   !eqvs   &&s   ^^s   //s   ??s   !!t   sos   <==s   ==>s   <<==s   ==>>u   )u   (u   >u   <u   ]u   [u   }u   {u   »u   «u   ༻u   ༺u   ༽u   ༼u   ᚜u   ᚛u   ’u   ‘u   ‚u   ‛u   ”u   “u   „u   ‟u   ›u   ‹u   ⁆u   ⁅u   ⁾u   ⁽u   ₎u   ₍u   ∋u   ∈u   ∌u   ∉u   ∍u   ∊u   ⧵u   ∕u   ∽u   ∼u   ⋍u   ≃u   ≓u   ≒u   ≕u   ≔u   ≥u   ≤u   ≧u   ≦u   ≩u   ≨u   ≫u   ≪u   ≯u   ≮u   ≱u   ≰u   ≳u   ≲u   ≵u   ≴u   ≷u   ≶u   ≹u   ≸u   ≻u   ≺u   ≽u   ≼u   ≿u   ≾u   ⊁u   ⊀u   ⊃u   ⊂u   ⊅u   ⊄u   ⊇u   ⊆u   ⊉u   ⊈u   ⊋u   ⊊u   ⊐u   ⊏u   ⊒u   ⊑u   ⦸u   ⊘u   ⊣u   ⊢u   ⫞u   ⊦u   ⫤u   ⊨u   ⫣u   ⊩u   ⫥u   ⊫u   ⊱u   ⊰u   ⊳u   ⊲u   ⊵u   ⊴u   ⊷u   ⊶u   ⋊u   ⋉u   ⋌u   ⋋u   ⋑u   ⋐u   ⋗u   ⋖u   ⋙u   ⋘u   ⋛u   ⋚u   ⋝u   ⋜u   ⋟u   ⋞u   ⋡u   ⋠u   ⋣u   ⋢u   ⋥u   ⋤u   ⋧u   ⋦u   ⋩u   ⋨u   ⋫u   ⋪u   ⋭u   ⋬u   ⋱u   ⋰u   ⋺u   ⋲u   ⋻u   ⋳u   ⋼u   ⋴u   ⋽u   ⋶u   ⋾u   ⋷u   ⌉u   ⌈u   ⌋u   ⌊u   〉u   〈u   ⎵u   ⎴u   ❩u   ❨u   ❫u   ❪u   ❭u   ❬u   ❯u   ❮u   ❱u   ❰u   ❳u   ❲u   ❵u   ❴u   ⟄u   ⟃u   ⟆u   ⟅u   ⟖u   ⟕u   ⟞u   ⟝u   ⟣u   ⟢u   ⟥u   ⟤u   ⟧u   ⟦u   ⟩u   ⟨u   ⟫u   ⟪u   ⦄u   ⦃u   ⦆u   ⦅u   ⦈u   ⦇u   ⦊u   ⦉u   ⦌u   ⦋u   ⦎u   ⦍u   ⦐u   ⦏u   ⦒u   ⦑u   ⦔u   ⦓u   ⦖u   ⦕u   ⦘u   ⦗u   ⧁u   ⧀u   ⧅u   ⧄u   ⧐u   ⧏u   ⧒u   ⧑u   ⧕u   ⧔u   ⧙u   ⧘u   ⧛u   ⧚u   ⧹u   ⧸u   ⧽u   ⧼u   ⨬u   ⨫u   ⨮u   ⨭u   ⨵u   ⨴u   ⨽u   ⨼u   ⩥u   ⩤u   ⩺u   ⩹u   ⩾u   ⩽u   ⪀u   ⩿u   ⪂u   ⪁u   ⪄u   ⪃u   ⪌u   ⪋u   ⪒u   ⪑u   ⪔u   ⪓u   ⪖u   ⪕u   ⪘u   ⪗u   ⪚u   ⪙u   ⪜u   ⪛u   ⪢u   ⪡u   ⪧u   ⪦u   ⪩u   ⪨u   ⪫u   ⪪u   ⪭u   ⪬u   ⪰u   ⪯u   ⪴u   ⪳u   ⪼u   ⪻u   ⪾u   ⪽u   ⫀u   ⪿u   ⫂u   ⫁u   ⫄u   ⫃u   ⫆u   ⫅u   ⫎u   ⫍u   ⫐u   ⫏u   ⫒u   ⫑u   ⫔u   ⫓u   ⫖u   ⫕u   ⫭u   ⫬u   ⫸u   ⫷u   ⫺u   ⫹u   ⸃u   ⸂u   ⸅u   ⸄u   ⸊u   ⸉u   ⸍u   ⸌u   ⸝u   ⸜u   ⸡u   ⸠u   〉u   〈u   》u   《u   」u   「u   』u   『u   】u   【u   〕u   〔u   〗u   〖u   〙u   〘u   〛u   〚u   〞u   〝u   ﴿u   ﴾u   ︘u   ︗u   ︶u   ︵u   ︸u   ︷u   ︺u   ︹u   ︼u   ︻u   ︾u   ︽u   ﹀u   ︿u   ﹂u   ﹁u   ﹄u   ﹃u   ﹈u   ﹇u   ﹚u   ﹙u   ﹜u   ﹛u   ﹞u   ﹝u   ）u   （u   ＞u   ＜u   ］u   ［u   ｝u   ｛u   ｠u   ｟u   ｣u   ｢t    c         C   sv   | d  k r3 d | d j d   |  D  | d Sd | d | d d j d   |  D  d | d	 | d Sd  S(
   Ns   \b(R  c         s   s   |  ] } t  j |  Vq d  S(   N(   R   t   escape(   t   .0R  (    (    s8   /usr/lib/python2.7/dist-packages/pygments/lexers/perl.pys	   <genexpr>~  s    s   )\bs   (?<!t   )t   (c         s   s   |  ] } t  j |  Vq d  S(   N(   R   R  (   R  R  (    (    s8   /usr/lib/python2.7/dist-packages/pygments/lexers/perl.pys	   <genexpr>  s    s   (?!(   t   NoneR   (   R   t   boundary_regex_fragmentR  R0   (    (    s8   /usr/lib/python2.7/dist-packages/pygments/lexers/perl.pyt   _build_word_match|  s    'c            s     f d   } | S(   Nc         3   s  | j    } | d } t |  } | j d  } t j j | d  } | j } | d  k r~ | j | | j d  |  }	 n | | }
 d } | j d  } x | d k r7| j | | |  } | j |
 | |  } | d k r t |  } d } q | d k r$| | k  r$| d 7} | } q | d 8} | } q W| }	 |	 d k  rYt |  }	 n  | d  k	 rt	 j
 d |  r| | j d  | |	 !} t	 j
 d t	 j |  d | |	 t	 j  } | r|	 | j   7}	 qt |  }	 n  | j     | | j   |	 | !f V|	 | | _ d  S(	   Nt	   delimitert   adverbsi    i   is   :to\bs   ^\s*s   \s*$(   t	   groupdictt   lent   getR   t   PERL6_BRACKETSR   R  t   findt   startR   R   R  R  R  R   (   t   lexert   matchR  t   groupst   opening_charst   n_charsR  t   closerR   t   end_post   closing_charst   nesting_levelt
   search_post   next_open_post   next_close_post   heredoc_terminatort   end_heredoc(   t   token_class(    s8   /usr/lib/python2.7/dist-packages/pygments/lexers/perl.pyt   callback  sD    
	"
	
	

%(    (   R  R  (    (   R  s8   /usr/lib/python2.7/dist-packages/pygments/lexers/perl.pyt   brackets_callback  s    5c         c   sz   | j  } | j   t | j | j   | j   !f V| j   | _ t |  d k rv | d d k rv | j d 7_ n  d  S(   Ni   iRo  i   (   t   stackR  R   R   R  R   R  t   perl6_token_nesting_level(   R  R  R  R  (    (    s8   /usr/lib/python2.7/dist-packages/pygments/lexers/perl.pyt   opening_brace_callback  s
    	*"c         c   s   | j  } | j   t | j | j   | j   !f V| j   | _ t |  d k r | d d k r | j d 8_ | j d k r | j   q n  d  S(   Ni   iRo  i   i    (	   R  R  R   R   R  R   R  R  R   (   R  R  R  R  (    (    s8   /usr/lib/python2.7/dist-packages/pygments/lexers/perl.pyt   closing_brace_callback  s    	*"c         c   sV   d | _  | j   t | j | j   | j   !f V| j   | _ | j j d  d  S(   Ni   R   (   R  R  R   R   R  R   R  t   append(   R  R  R  (    (    s8   /usr/lib/python2.7/dist-packages/pygments/lexers/perl.pyt   embedded_perl6_callback  s    	*s$   #[`|=](?P<delimiter>(?P<first_char>[s   ])(?P=first_char)*)s   #[^\n]*$s%   ^(\s*)=begin\s+(\w+)\b.*?^\1=end\s+\2s   ^(\s*)=for.*?\n\s*?\ns   ^=.*?\n\s*?\ns   (regex|token|rule)(\s*s   +:sym)s   token-sym-bracketss   (regex|token|rule)(?!s   )(\s*s   +)?s	   pre-tokens   (role)(\s+)(q)(\s*)R0   s
   (?::[UD])?s   [$@%&][.^:?=!~]?u   +(?:<<.*?>>|<.*?>|«.*?»)*s    \$[!/](?:<<.*?>>|<.*?>|«.*?»)*s   ::\?\w+s   [$@%&]\*s   \$(?:<.*?>)+sn   (?:q|qq|Q)[a-zA-Z]?\s*(?P<adverbs>:[\w\s:]+)?\s*(?P<delimiter>(?P<first_char>[^0-9a-zA-Z:\s])(?P=first_char)*)s   0_?[0-7]+(_[0-7]+)*s   0x[0-9A-Fa-f]+(_[0-9A-Fa-f]+)*s   0b[01]+(_[01]+)*s?   (?i)(\d*(_\d*)*\.\d+(_\d*)*|\d+(_\d*)*\.\d+(_\d*)*)(e[+-]?\d+)?s   (?i)\d+(_\d*)*e[+-]?\d+(_\d*)*s
   \d+(_\d+)*s   (?<=~~)\s*/(?:\\\\|\\/|.)*?/s   (?<=[=(,])\s*/(?:\\\\|\\/|.)*?/s
   m\w+(?=\()s_   (?:m|ms|rx)\s*(?P<adverbs>:[\w\s:]+)?\s*(?P<delimiter>(?P<first_char>[^\w:\s])(?P=first_char)*)sB   (?:s|ss|tr)\s*(?::[\w\s:]+)?\s*/(?:\\\\|\\/|.)*?/(?:\\\\|\\/|.)*?/s   <[^\s=].*?\S>s   \ws   '(\\\\|\\[^\\]|[^'\\])*'s   "(\\\\|\\[^\\]|[^"\\])*"t   commons   \{s   \}s   .+?R   s   #pops   (?P<delimiter>(?P<first_char>[s,   (?<=:)(?:my|our|state|constant|temp|let).*?;s   <(?:[-!?+.]\s*)?\[.*?\]>s   (?<!\\)'(\\\\|\\[^\\]|[^'\\])*'s   (?<!\\)"(\\\\|\\[^\\]|[^"\\])*"s   #.*?$c         C   s  d   } |  j    } | |  } d j |  }  t |  d  rC t St } t } t j d t j d |   r{ d } t } n  x | D] } t j	 d d |  } t j
 d	 |  r q n  t j
 d
 |  r t St j
 d |  } | r| s | j d  d  k	 rt Sd } q n  Pq W| S(   Nc         S   sm   t  } g  } xZ |  D]R } t j d |  r4 t  } q t j d |  rO t } q | s | j |  q q W| S(   Ns   ^=(?:end|cut)s   ^=\w+(   R8  R   R  R   R  (   R  t   in_podt   stripped_linest   line(    (    s8   /usr/lib/python2.7/dist-packages/pygments/lexers/perl.pyt	   strip_pod2  s    		s   
s   perl6|rakudo|niecza|pugss   (?:my|our|has)\s+(?:s   +\s+)?[$@%&(]g?s   #.*R  s   ^\s*$s$   ^\s*(?:use\s+)?v6(?:\.\d(?:\.\d)?)?;s?   ^\s*(?:(?P<scope>my|our)\s+)?(?:module|class|role|enum|grammar)t   scopeg?(   t
   splitlinesR   R   R   R8  R   R   R   t   PERL6_IDENTIFIER_RANGERh  R  t   groupR  (   R   R  R  t   saw_perl_declt   ratingR  t
   class_decl(    (    s8   /usr/lib/python2.7/dist-packages/pygments/lexers/perl.pyR   1  s4    		c         K   s/   t  t |   j |   | j d d  |  _ d  S(   Nt   encodings   utf-8(   t   superR   t   __init__R  R  (   Re  t   options(    (    s8   /usr/lib/python2.7/dist-packages/pygments/lexers/perl.pyR  d  s    (s   s   BEGINR  s   CHECKR   s   ENDR!  R"  s   INITR#  R$  R%  R&  R'  R(  R)  R*  R+  R,  R-  R.  R/  R0  R1  R2  R3  s   categoryR5  R6  R7  s   continues   copyR9  s   defaultR:  R;  s   dies   dos   elses   elsifR<  R=  s   exitR>  R?  R@  s   forRA  RB  s   gotoRC  RD  RE  s   ifRF  RG  RH  s   lastRI  RJ  RK  RL  RM  RN  RO  RP  RQ  s   moduleRS  s   mys   nextRT  RU  RV  RW  RX  s   ours   packageRY  RZ  s   protos   readonlys   redos   refR]  R^  s   repeats   requireR`  s   returnRa  Rb  Rc  Rd  s   selfRf  s   states   subRi  Rj  Rk  Rl  Rm  Rn  s   tokenRp  Rq  Rr  s   unlesss   untils   uses   warnRs  Rt  s   whileRu  (   Rv  Rw  Rx  Ry  Rz  R{  R|  R}  R~  s   absR  R  R  R  R  R  s   alls   anyR  R  R  R  R  R  R  R  s   atan2R  s   attrs   blessR  R  s   bytess   callerR  R  R  s
   capitalizes   catR  s   charss   chmods   chomps   chops   chrs   chrootR  R  R  R  s   closeR  R  R  s   connectR  s   contexts   cosR  R  R  R  R  s   counts   defineds   deleteR  R  R  R  s   eachR  R  s   ends   eofs   evalR  R  R  R  s   existss   expR  R  R  R  s   flushR  R  s   forkR  s   getcR  s   getlogins   getpeernameR  s   gmtimeR  s   grepR  R  R  s   indexR  R  R  R  R  R  R  s   iterators   joins   keys   keyss   killR  R  R  s   lcs   lcfirstR  s   liness   linkR  s	   localtimes   logR  s   maps   maxs   minR  s   names   newR  R  R  R  R  R  R  R  R  R  R  R  s   oks   onceR  s   opens   opendirR  s   ordR  R  s   packR  R  R  s   perlR  R  R  R  R  s   pops   posR  R  R  s   prefixs   prints   printfs   pushR  s	   quotemetas   rands   res   reads   readdirs   readlines   reduces   reverseR  s	   rewinddirs   rindexR  s   roundR  R  R  R  R  R  R  R   R   s   seeks   shapes   shiftR  R  s   sinR  s   skipR  s   sleepR  s   sorts   splices   splits   sprintfs   sqrts   srandR  R	  s   substrR
  s   sums   symlinkR  R  R  s   times   timesR  R  R  R  R  R  s   truncates   ucs   ucfirsts   undefR  R  R  s   unlinks   unpackR  s   unshiftR  R  s   values   valuess   vecR  s   voids   waitR  R  s   writes   zip(o   R!  R"  R#  R$  R%  R&  R'  R(  R)  R*  R+  R,  s   CallableR.  R/  R0  R1  R2  R3  R4  R5  s	   ExceptionR7  s   FalseR9  R:  R;  R<  R=  R>  R?  R@  RA  RB  RC  RD  RE  RF  s   MappingRH  RI  RJ  RK  RL  RM  RN  RO  RP  RQ  RR  RS  RT  RU  RV  s   RegexRW  RX  RY  RZ  s   SetR\  R]  R^  R_  R`  Ra  s   TrueRb  Rc  Rd  Re  Rf  Rg  s   boolRi  Rj  Rk  Rl  Rm  Rn  Ro  Rp  s   complexs   intRr  Rs  Rt  Ru  Rv  Rw  Rx  Ry  Rz  R{  R|  R}  R~  R  R  R  R  R  R  R  R  R  R  R  s   utf16s   utf32s   utf8(e   R  R  s   afterR  R  R  R  s   cmpR  R  R  R  R  R  R  R  R  R  R  R  R  s   modR  s   orR  R  R  s   trR  R  R  s   ++s   --s   **R  R  R  R  R  R  s   ||s   +^s   ~^s   ?^R  R  R  R  s   %%s   +&s   +<s   +>s   ~&s   ~<s   ~>s   ?&R  R  R  R  s   +|s   +^s   ~|s   ~^s   ?|s   ?^R  R  R  R2  R  s   <=>s   ..s   ..^s   ^..s   ^..^s   !=s   ==R  s   <=R  s   >=s   ~~s   ===s   !eqvs   &&s   ||s   ^^s   //s   mins   maxs   ??s   !!R  R  R  R  s   <==s   ==>s   <<==s   ==>>N(   s   #pops   token(   s   #pops	   pre-token(   s   #pops	   pre-token(3   R   R   R   R   R  R  R  R   R  R  t   UNICODER  R  t   PERL6_KEYWORDSt   PERL6_BUILTINSt   PERL6_BUILTIN_CLASSESt   PERL6_OPERATORSR  R  R  R  R  R  R  R   R	   R	  t
   SinglelineR   R   R   R   R  R  R  R   R   R  R  R  R  R  R  R
   R   R   R   R   R  R   R  (    (    (    s8   /usr/lib/python2.7/dist-packages/pygments/lexers/perl.pyR      s                                                                        		8			
													3(   R   R   t   pygments.lexerR    R   R   R   R   R   R   R   t   pygments.tokenR   R	   R
   R   R   R   R   R   t   pygments.utilR   t   __all__R   R   (    (    (    s8   /usr/lib/python2.7/dist-packages/pygments/lexers/perl.pyt   <module>
   s   ::