
T[Tc           @   s   d  Z  d d l m Z m Z m Z d d l m Z m Z m Z m	 Z	 m
 Z
 m Z m Z d d d g Z d e f d     YZ d e f d     YZ d e f d	     YZ d
 S(   s   
    pygments.lexers.d
    ~~~~~~~~~~~~~~~~~

    Lexers for D languages.

    :copyright: Copyright 2006-2014 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
i(   t
   RegexLexert   includet   words(   t   Textt   Commentt   Keywordt   Namet   Stringt   Numbert   Punctuationt   DLexert	   CrocLexert
   MiniDLexerc        U   B   s  e  Z d  Z d Z d d g Z d g Z d g Z i d e f d e f d e j	 f d	 e j
 f d
 e j
 d f e d dZ d[ e f e d dZ d[ e j f dt e j f e d dZ 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 j f d e j f d e j f d e f d e f d e f d e f d e f d e d f d e d f d e d f d e d f d e f d e f d e d f d e j f d e f d e f d e j f g# d 6d e j
 f d
 e j
 d f d e j
 d f d e j
 f g d 6d e d f d e d f e d  g d 6d e d f d e d f e d  g d 6d e f d e d f d e d f g d 6d e f d e d f d e d f g d 6d e f d e d f d e d f g d 6d e f d e d f d e d f g d 6d e f d e d f d e d f g d 6d e f d e d f d e d f g d 6d e f d e d f d e d f g d 6d e f d e d f d e d f g d 6Z RS(   s2   
    For D source.

    .. versionadded:: 1.2
    t   Ds   *.ds   *.dit   ds   text/x-dsrcs   \ns   \s+s	   //(.*?)\ns   /(\\\n)?[*](.|\n)*?[*](\\\n)?/s   /\+t   nested_commentt   abstractt   aliast   alignt   asmt   assertt   autot   bodyt   breakt   caset   castt   catcht   classt   constt   continuet   debugt   defaultt   delegatet   deletet
   deprecatedt   dot   elset   enumt   exportt   externt   finallyt   finalt   foreach_reverset   foreacht   fort   functiont   gotot   ift	   immutablet   importt	   interfacet	   invariantt   inoutt   int   ist   lazyt   mixint   modulet   newt   nothrowt   outt   overridet   packaget   pragmat   privatet	   protectedt   publict   puret   reft   returnt   scopet   sharedt   statict   structt   supert   switcht   synchronizedt   templatet   thist   throwt   tryt   typedeft   typeidt   typeoft   uniont   unittestt   versiont   volatilet   whilet   witht	   __gsharedt   __traitst   __vectort   __parameterst   suffixs   \bt   boolt   bytet   cdoublet   centt   cfloatt   chart   crealt   dchart   doublet   floatt   idoublet   ifloatt   intt   irealt   longt   realt   shortt   ubytet   ucentt   uintt   ulongt   ushortt   voidt   wchars   (false|true|null)\bt   __FILE__t
   __MODULE__t   __LINE__t   __FUNCTION__t   __PRETTY_FUNCTION__t   __DATE__t   __EOF__t   __TIME__t   __TIMESTAMP__t
   __VENDOR__t   __VERSION__s   macro\bs+   (string|wstring|dstring|size_t|ptrdiff_t)\bsL   0[xX]([0-9a-fA-F_]*\.[0-9a-fA-F_]+|[0-9a-fA-F_]+)[pP][+\-]?[0-9_]+[fFL]?[i]?sI   [0-9_]+(\.[0-9_]+[eE][+\-]?[0-9_]+|\.[0-9_]*|[eE][+\-]?[0-9_]+)[fFL]?[i]?s0   \.(0|[1-9][0-9_]*)([eE][+\-]?[0-9_]+)?[fFL]?[i]?s   0[Bb][01_]+s   0[0-7_]+s   0[xX][0-9a-fA-F_]+s$   (0|[1-9][0-9_]*)([LUu]|Lu|LU|uL|UL)?sa   '(\\['"?\\abfnrtv]|\\x[0-9a-fA-F]{2}|\\[0-7]{1,3}|\\u[0-9a-fA-F]{4}|\\U[0-9a-fA-F]{8}|\\&\w+;|.)'s   r"[^"]*"[cwd]?s   `[^`]*`[cwd]?s   "(\\\\|\\"|[^"])*"[cwd]?sT   \\(['\"?\\abfnrtv]|x[0-9a-fA-F]{2}|[0-7]{1,3}|u[0-9a-fA-F]{4}|U[0-9a-fA-F]{8}|&\w+;)s   x"[0-9a-fA-F_\s]*"[cwd]?s   q"\[t   delimited_brackets   q"\(t   delimited_parenthesiss   q"<t   delimited_angles   q"\{t   delimited_curlys   q"([a-zA-Z_]\w*)\n.*?\n\1"s   q"(.).*?\1"s   q\{t   token_strings   @([a-zA-Z_]\w*)?s   (~=|\^=|%=|\*=|==|!>=|!<=|!<>=|!<>|!<|!>|!=|>>>=|>>>|>>=|>>|>=|<>=|<>|<<=|<<|<=|\+\+|\+=|--|-=|\|\||\|=|&&|&=|\.\.\.|\.\.|/=)|[/.&|\-+<>!()\[\]{}?,;:$=*%^~]s   [a-zA-Z_]\w*s   #line\s.*\nt   roots   [^+/]+s   #pushs   \+/s   #pops   [+/]s   \{t   token_string_nests   \}s   [^\[\]]+s   \[t   delimited_inside_brackets   \]"s   \]s   [^()]+s   \(t   delimited_inside_parenthesiss   \)"s   \)s   [^<>]+t   <t   delimited_inside_angles   >"t   >s   [^{}]+t   delimited_inside_curlys   \}"(N   R   s   aliasR   R   s   assertR   R   R   R   R   R   R   R   R   s   debugs   defaultR    R!   R"   R#   s   elseR%   R&   R'   R(   s   finalR*   R+   R,   R-   R.   R/   R0   R1   R2   R3   R4   s   inR6   R7   R8   s   modules   newR;   s   outR=   s   packageR?   R@   RA   RB   RC   s   refRE   RF   RG   RH   RI   s   superRK   RL   s   templates   thiss   throwRP   RQ   RR   RS   s   unionRU   s   versionRW   RX   RY   RZ   R[   R\   R]   (   s   boolR`   Ra   Rb   Rc   s   charRe   Rf   Rg   s   floatRi   Rj   s   intRl   s   longs   realRo   Rp   Rq   Rr   Rs   Rt   s   voidRv   (   Rw   Rx   Ry   Rz   R{   R|   R}   R~   R   R   R   (    t   __name__t
   __module__t   __doc__t   namet	   filenamest   aliasest	   mimetypesR   R   t   Singlet	   MultilineR   R   t   Typet   Constantt   Pseudot   ReservedR   t   BuiltinR   t   Floatt   Bint   Octt   Hext   IntegerR   t   Chart	   DecoratorR	   t   SpecialR   t   tokens(    (    (    s5   /usr/lib/python2.7/dist-packages/pygments/lexers/d.pyR
      s   				              	  																			c        '   B   s9  e  Z d  Z d Z d g Z d g Z d g Z i d e f d e f d e j	 f d e j
 d	 f e d? d+ d, e f d- e j f d. e j f d/ e j f d0 e j f d1 e j f d2 e j f d3 e f d4 e f d5 e f d6 e f d7 e f d8 e f g d9 6d: e j
 f d e j
 d; f d< e j
 d= f d> e j
 f g d	 6Z RS(@   s=   
    For `Croc <http://jfbillingsley.com/croc>`_ source.
    t   Crocs   *.croct   crocs   text/x-crocsrcs   \ns   \s+s	   //(.*?)\ns   /\*t   nestedcommentt   asR   R   R   R   R   R   R   R#   R$   R(   R,   R+   R-   t   globalt	   namespaceR/   R1   R5   R6   t   localR9   RE   RF   RJ   RK   RN   RO   RP   t   varargRX   RY   t   yieldR^   s   \bs   (false|true|null)\bs<   ([0-9][0-9_]*)(?=[.eE])(\.[0-9][0-9_]*)?([eE][+\-]?[0-9_]+)?s   0[bB][01][01_]*s   0[xX][0-9a-fA-F][0-9a-fA-F_]*s   ([0-9][0-9_]*)(?![.eE])sT   '(\\['"\\nrt]|\\x[0-9a-fA-F]{2}|\\[0-9]{1,3}|\\u[0-9a-fA-F]{4}|\\U[0-9a-fA-F]{8}|.)'s   @"(""|[^"])*"s   @`(``|[^`])*`s   @'(''|[^'])*'s   "(\\\\|\\"|[^"])*"s   (~=|\^=|%=|\*=|==|!=|>>>=|>>>|>>=|>>|>=|<=>|\?=|-\>|<<=|<<|<=|\+\+|\+=|--|-=|\|\||\|=|&&|&=|\.\.|/=)|[-/.&$@|\+<>!()\[\]{}?,;:=*%^~#\\]s   [a-zA-Z_]\w*R   s   [^*/]+s   #pushs   \*/s   #pops   [*/](!   R   s   asserts   breaks   cases   catchs   classs   continues   defaults   dos   elses   finallys   fors   foreachs   functionR   s	   namespaces   ifs   imports   ins   isR   s   modules   returns   scopes   supers   switchs   thiss   throws   tryR   s   whiles   withR   (   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R	   R   R   (    (    (    s5   /usr/lib/python2.7/dist-packages/pygments/lexers/d.pyR      sH   					    						c           B   s,   e  Z d  Z d Z g  Z d g Z d g Z RS(   s7   
    For MiniD source. MiniD is now known as Croc.
    t   MiniDt   minids   text/x-minidsrc(   R   R   R   R   R   R   R   (    (    (    s5   /usr/lib/python2.7/dist-packages/pygments/lexers/d.pyR      s
   	N(   R   t   pygments.lexerR    R   R   t   pygments.tokenR   R   R   R   R   R   R	   t   __all__R
   R   R   (    (    (    s5   /usr/lib/python2.7/dist-packages/pygments/lexers/d.pyt   <module>
   s   4>