ķ
×P[Tc           @   s­   d  Z  d d l m Z d d l 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 m Z d g Z d e f d     YZ d S(   sĪ   
    pygments.lexers.fantom
    ~~~~~~~~~~~~~~~~~~~~~~

    Lexer for the Fantom language.

    :copyright: Copyright 2006-2014 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
i˙˙˙˙(   t   Template(   t
   RegexLexert   includet   bygroupst   usingt   thist   defaultt   words(	   t   Textt   Commentt   Operatort   Keywordt   Namet   Stringt   Numbert   Punctuationt   Literalt   FantomLexerc           B   s  e  Z d  Z d Z d g Z d g Z d g Z d   Z i d e j	 f d e j
 f d e j f d	 e j
 f g d
 6d e f d e f d e j f d e j f d e j f d e j f d e d f d e d f d e j f d e e j e e j e e e  f d e e j e e j e e j  f d e f e d  e e e d d e  f d e f e d  e e e d d e  f g d 6d e j f d  e j f d! e j f d" e j f d# e j f d e d$ f d% e f g d 6d e j f d  e j f d! e j f d" e j f d# e j f d e d$ f d% e j f g d 6d& e f g d' 6d( e f g d) 6d* e f g d+ 6d, e f g d- 6e  dq dB dC dD dC e f dE e j! j" f g dF 6dG e# f g dH 6dI e f e dJ  e j f e$ d$  g d 6e% d
  e% d'  e% d)  e% d+  e% d-  e% d  e% dF  e% dH  dK e j dL f dM e j& dN f dO e e e' e j  dP f e dQ  e e e d d e' e j( e' e#  f e dR  e e j( e' e#  f e dS  e e# e j e' e  dT f e dU  e e# e j  f dV e e e' e j e' e  dW f e dX  e e e d d e' e j e' e  dW f e dY  e e e d d e' e j( e' e  f e dZ  e e e d d e' e j( e' e e' e e d d e  f e d[  e e e d d e' e j( e' e  f e d\  e e e d d e' e j(  f d] e dT f d^ e d_ f d% e' f g d` 6da e d$ f e% d`  g dT 6da e d$ f e db  e e e d d e' e j( e' e  d$ f e% d`  g dW 6dc e d$ f e% d`  g d_ 6dd e' f de e f df e e j e e j  f d^ e d$ f g dP 6dg e' f dh e e e j e  f di e e e j e  f dj e dk f e$ d$  g dL 6dg e' f dl e e j) e' e j  dm f dn e j f e$ dm  g dk 6dd e' f d^ e do f e$ d$  g dN 6e% d
  e% d  e% dH  dd e' f dp e e' e e' e#  f dc e d$ f d% e' f g do 6Z* RS(r   s<   
    For Fantom source code.

    .. versionadded:: 1.5
    t   Fantomt   fans   *.fans   application/x-fantomc      
   C   s.   t  |   j t d d d d d d d d   S(	   Nt   pods	   [\"\w\.]+t   eoss   \n|;t   ids   [a-zA-Z_]\w*t   types#   (?:\[|[a-zA-Z_]|\|)[:\w\[\]|\->?]*?(   R    t
   substitutet   dict(   t   str(    (    s:   /usr/lib/python2.7/dist-packages/pygments/lexers/fantom.pyt   s"   s    s   (?s)/\*.*?\*/s   //.*?\ns	   \*\*.*?\ns   #.*\nt   commentss    \b-?[\d_]+(ns|ms|sec|min|hr|day)s(   \b-?[\d_]*\.[\d_]+(ns|ms|sec|min|hr|day)s   \b-?(\d+)?\.\d+(f|F|d|D)?s   \b-?0x[0-9a-fA-F_]+s
   \b-?[\d_]+s   '\\.'|'[^\\]'|'\\u[0-9a-f]{4}'t   "t	   insideStrt   `t	   insideUris   \b(true|false|null)\bs"   (?:(\w+)(::))?(\w+)(<\|)(.*?)(\|>)s   (?:(\w+)(::))?(\w+)?(#)(\w+)?s   \[,\]s   ($type)(\[,\])t   statet   inTypes   \[:\]s   ($type)(\[:\])t   literalss   \\\\s   \\"s   \\`s   \$\w+s	   \$\{.*?\}s   #popt   .s'   \b(public|protected|private|internal)\bt   protectionKeywordss,   \b(abstract|final|const|native|facet|enum)\bt   typeKeywordss8   \b(abstract|native|once|override|static|virtual|final)\bt   methodKeywordssB   \b(abstract|const|final|native|override|static|virtual|readonly)\bt   fieldKeywordst   tryt   catcht   throwt   finallyt   fort   ift   elset   whilet   ast   ist   isnott   switcht   caseR   t   continuet   breakt   dot   returnt   gett   sett   prefixs   \bt   suffixs   \b(it|this|super)\bt   otherKeywordss4   \+\+|\-\-|\+|\-|\*|/|\|\||&&|<=>|<=|<|>=|>|=|!|\[|\]t	   operatorss   [\[\]|\->:?]s   $ids   using\bR   s   @\w+t   facets   (class|mixin)(\s+)(\w+)t   inheritances   ($type)([ \t]+)($id)(\s*)(:=)s   ($id)(\s*)(:=)s   (\.|(?:\->))($id)(\s*)(\()t   insideParens   (\.|(?:\->))($id)s   (new)(\s+)(make\w*)(\s*)(\()t   insideMethodDeclArgss   ($type)([ \t]+)($id)(\s*)(\()s   ($type)(\s+)($id)(\s*)(,)s+   ($type)(\s+)($id)(\s*)(\->)(\s*)($type)(\|)s   ($type)(\s+)($id)(\s*)(\|)s   ($type)([ \t]+)($id)s   \(s   \{t   insideBracet   roots   \)s   ($type)(\s+)($id)(\s*)(\))s   \}s   \s+s   :|,s   (?:(\w+)(::))?(\w+)s   [ \t]+s   (\[)(\w+)(\])s   (\")?([\w.]+)(\")?s   ::t
   usingClasss   (as)(\s+)(\w+)s   #pop:2s   [\w$]+t   facetFieldss   (\s*)(\w+)(\s*)(=)(   R)   R*   s   throwR,   R-   R.   s   elseR0   R1   R2   R3   R4   R5   s   defaultR6   R7   R8   R9   s   gets   set(+   t   __name__t
   __module__t   __doc__t   namet   aliasest	   filenamest	   mimetypesR   R	   t	   Multilinet   Singlet   SpecialR   t   Floatt   Hext   IntegerR   t   CharR   R   t   ConstantR   R   t	   Namespacet   Classt   FunctionR   R   R   t   Escapet   Interpolt   BacktickR   t   Builtint   PseudoR
   R   R   t	   DecoratorR   t   Variablet   Declarationt   tokens(    (    (    s:   /usr/lib/python2.7/dist-packages/pygments/lexers/fantom.pyR      s  										"  																													N(   RJ   t   stringR    t   pygments.lexerR   R   R   R   R   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/fantom.pyt   <module>
   s
   4@	