ķ
zR[Tc           @   s   d  Z  d d l 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 m Z m Z d g Z d e f d     YZ d S(   sĪ   
    pygments.lexers.nimrod
    ~~~~~~~~~~~~~~~~~~~~~~

    Lexer for the Nimrod language.

    :copyright: Copyright 2006-2014 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
i˙˙˙˙N(   t
   RegexLexert   includet   default(	   t   Textt   Commentt   Operatort   Keywordt   Namet   Stringt   Numbert   Punctuationt   Errort   NimrodLexerc        :   B   sC  e  Z d  Z d Z d d g Z d d g Z d g Z e j e j	 Be j
 BZ d   Z d d	 d
 d d d d d d d d d d d d d d d d d d d d d d  d! d" d# d$ d% d& d' d( d) d* d+ d, d- d. d/ d0 d1 d2 d3 d4 d5 d6 d7 d8 d9 d: d; d< d= d> d? d@ dA g: Z dB dC dD g Z d	 d0 d, dA d7 d8 d d+ d" d- d$ d% g Z dE dF dG dH dI dJ dK dL dM dN dO dP dQ dR dS g Z i dT e j f dU e f dV e f dW e f dX e dY f dZ e d[ f d\ e d] f d^ e j d_ f d` e e  e j f da e db f d` e e  e f d` e dc dd de g  e j f df e j f d` e e  e j f d` e e  e j f dg e f dh e j d f dk e j  dl f dm e j! dl f dn e j" dl f do e j# dl f dp e$ f dq e% f g dr 6ds e j& f d^ e j dt f du e j f g d_ 6dv e j' f dw e f dx e f dy e f g dz 6d{ e j& f d\ e dt f e( dz  g d] 6d| e dt f d} e j& f e( dz  g dY 6d~ e dt f e( dz  e( d  g d[ 6d e j) dt f d e j) dt f g db 6d e f g d 6d e j f d e j f e* dt  g dj 6d e j f e* dt  g di 6d e j# j+ f d e j# f e* dt  g dl 6Z, RS(   sY   
    For `Nimrod <http://nimrod-code.org/>`_ source code.

    .. versionadded:: 1.5
    t   Nimrodt   nimrodt   nims   *.nims   *.nimrods   text/x-nimrodc         C   s\   g  } d } x@ |  D]8 } x | D] } | | d 7} q  W| j  |  d } q Wd j |  S(   Nt    s   _?t   |(   t   appendt   join(   t   wordst   newWordst   newt   wordt   ch(    (    s:   /usr/lib/python2.7/dist-packages/pygments/lexers/nimrod.pyt   underscorize#   s    
t   addrt   andt   ast   asmt   atomict   bindt   blockt   breakt   caset   castt   constt   continuet	   convertert   discardt   distinctt   divt   elift   elset   endt   enumt   exceptt   finallyt   fort   generict   ift   impliest   int   yieldt   ist   isnott   iteratort   lambdat   lett   macrot   methodt   modt   nott   notint   objectt   oft   ort   outt   proct   ptrt   raiset   reft   returnt   shlt   shrt   templatet   tryt   tuplet   typet   whent   whilet   witht   withoutt   xort   nilt   truet   falset   intt   int8t   int16t   int32t   int64t   floatt   float32t   float64t   boolt   chart   ranget   arrayt   seqt   sett   strings   ##.*$s   #.*$s   [*=><+\-/@$~&%!?|\\\[\]]s<   \.\.|\.|,|\[\.|\.\]|\{\.|\.\}|\(\.|\.\)|\{|\}|\(|\)|:|\^|`|;s
   (?:[\w]+)"t   rdqss   """t   tdqst   "t   dqst   't   charss   (%s)\bs   (p_?r_?o_?c_?\s)(?![(\[\]])t   funcnamet   fromt   importR   s   (v_?a_?r)\bs&   \b((?![_\d])\w)(((?!_)\w)|(_(?!_)\w))*s!   [0-9][0-9_]*(?=([e.]|\'f(32|64)))s   float-suffixs   float-numbers   0x[a-f0-9][a-f0-9_]*s
   int-suffixs   0b[01][01_]*s   0o[0-7][0-7_]*s   [0-9][0-9_]*s   \s+s   .+$t   roots-   \\([\\abcefnrtvl"\']|x[a-f0-9]{2}|[0-9]{1,3})s   #popt   .s   (?<!\$)\$(\d+|#|\w+)+s   [^\\\'"$\n]+s   [\'"\\]s   \$t   stringss0   \\([\\abcefnrtvl"\']|\n|x[a-f0-9]{2}|[0-9]{1,3})s   "(?!")s   ""s   """(?!")t   nls$   ((?![\d_])\w)(((?!_)\w)|(_(?!_)\w))*s   `.+`s   \ns   \.(?!\.)[0-9_]*s   e[+-]?[0-9][0-9_]*s
   \'f(32|64)s
   \'i(32|64)s	   \'i(8|16)(   s   float-suffixs   float-number(-   t   __name__t
   __module__t   __doc__t   namet   aliasest	   filenamest	   mimetypest   ret	   MULTILINEt
   IGNORECASEt   UNICODEt   flagsR   t   keywordst   keywordsPseudot   opWordst   typesR   t   DocR   R   R
   t   Chart   WordR   t	   Namespacet   Declarationt   Typet   PseudoR   R	   t   Floatt   Hext   Bint   Octt   IntegerR   R   t   Escapet   InterpolR   t   FunctionR   t   Longt   tokens(    (    (    s:   /usr/lib/python2.7/dist-packages/pygments/lexers/nimrod.pyR      s   											(   Ru   Rz   t   pygments.lexerR    R   R   t   pygments.tokenR   R   R   R   R   R   R	   R
   R   t   __all__R   (    (    (    s:   /usr/lib/python2.7/dist-packages/pygments/lexers/nimrod.pyt   <module>
   s
   @	