Ñò Žf¯Jc@s¹dZddkZddklZlZlZlZlZlZddk l Z l Z l Z l Z lZlZlZlZlZlZlZlZddklZlZlZlZlZddklZddklZl Z l!Z!ddk"l#Z#dd k$l%Z%d d d d dddddddddddddgZ&d efd„ƒYZ'd efd„ƒYZ(defd„ƒYZ)d efd„ƒYZ*d efd„ƒYZ+defd „ƒYZ,defd!„ƒYZ-defd"„ƒYZ.defd#„ƒYZ/defd$„ƒYZ0defd%„ƒYZ1defd&„ƒYZ2defd'„ƒYZ3defd(„ƒYZ4defd)„ƒYZ5defd*„ƒYZ6defd+„ƒYZ7dS(,sÐ pygments.lexers.parsers ~~~~~~~~~~~~~~~~~~~~~~~ Lexers for parser generators. :copyright: Copyright 2006-2009 by the Pygments team, see AUTHORS. :license: BSD, see LICENSE for details. iÿÿÿÿN(t RegexLexertDelegatingLexertincludetbygroupstusingtthis( tErrort PunctuationtGenerictOthertTexttCommenttOperatortKeywordtNametStringtNumbert Whitespace(t JavaLexertCLexertCppLexertObjectiveCLexertDLexer(t CSharpLexer(t RubyLexert PythonLexert PerlLexer(tActionScriptLexer(t TextLexert RagelLexertRagelEmbeddedLexert RagelCLexert RagelDLexert RagelCppLexertRagelObjectiveCLexertRagelRubyLexertRagelJavaLexert AntlrLexertAntlrPythonLexertAntlrPerlLexertAntlrRubyLexert AntlrCppLexertAntlrCSharpLexertAntlrObjectiveCLexertAntlrJavaLexertAntlrActionScriptLexercBsöeZdZdZdgZgZh defgd6defgd6defdefd efd efgd 6d e i fd e i fgd6de fde fde fde i fgd6deifgd6defdefdefdefdefdefdefdefdefdefd efd!efd"efd#efgd$6edƒedƒedƒed ƒedƒedƒed$ƒd%ed&fd'efd(efg d)6d*d+id6ƒd2efd%ed3fd4ed5fgd&6ZRS(7sè A pure `Ragel `_ lexer. Use this for fragments of Ragel. For ``.rl`` files, use RagelEmbeddedLexer instead (or one of the language-specific subclasses). *New in Pygments 1.1.* tRageltragels\s+t whitespaces\#.*$tcommentss(access|action|alphtype)\bs (getkey|write|machine|include)\bs2(any|ascii|extend|alpha|digit|alnum|lower|upper)\bs3(xdigit|cntrl|graph|print|punct|space|zlen|empty)\btkeywordss0x[0-9A-Fa-f]+s [+-]?[0-9]+tnumberss"(\\\\|\\"|[^"])*"s'(\\\\|\\'|[^'])*'s\[(\\\\|\\\]|[^\]])*\]s/(?!\*)(\\\\|\\/|[^/])*/tliteralss[a-zA-Z_][a-zA-Z_0-9]*t identifierst,s \||&|-|--s \.|<:|:>|:>>t:s->s(>|\$|%|<|@|<>)(/|eof\b)s(>|\$|%|<|@|<>)(!|err\b)s(>|\$|%|<|@|<>)(\^|lerr\b)s(>|\$|%|<|@|<>)(~|to\b)s(>|\$|%|<|@|<>)(\*|from\b)s>|@|\$|%s\*|\?|\+|{[0-9]*,[0-9]*}s!|\^s\(|\)t operatorst{thostt=t;troott(t|s [^{}\'"/#]+s [^\\][\\][{}]s//.*$\n?s/\*(.|\n)*?\*/s\#.*$\n?t/s)+s#pusht}s#pop( s [^{}\'"/#]+s [^\\][\\][{}]s"(\\\\|\\"|[^"])*"s'(\\\\|\\'|[^'])*'s//.*$\n?s/\*(.|\n)*?\*/s\#.*$\n?s/(?!\*)(\\\\|\\/|[^/])*/R@(t__name__t __module__t__doc__tnametaliasest filenamesRR R RtHextIntegerRtRegexRtVariableR RRtjoinR ttokens(((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyR$sZ                               c BsÙeZdZdZdgZdgZhddidƒdefdee e e ƒe e ƒfde dfgd6ddiddid ƒddd dd d d fƒde e ƒfde dfgd6Z d„ZRS(!sä A lexer for `Ragel`_ embedded in a host language file. This will only highlight Ragel statements. If you want host language highlighting then call the language-specific Ragel lexer. *New in Pygments 1.1.* sEmbedded Ragelsragel-ems*.rlR>R?s [^%\'"/#]+s %(?=[^%]|$)s"(\\\\|\\"|[^"])*"s'(\\\\|\\'|[^'])*'s/\*(.|\n)*?\*/s//.*$\n?s\#.*$\n?s/(?!\*)(\\\\|\\/|[^/])*/R@s)+s(%%)(?![{%])(.*)($|;)(\n?)s (%%%%|%%){smulti-line-fsmR=s [^}\'"\[/#]s }(?=[^%]|$)s }%(?=[^%]|$)s [^\\][\\][{}]s(>|\$|%|<|@|<>)/s/(?!\*)(\\\\|\\/|[^/])*/\*s /(?=[^/\*]|$)s\[(\\\\|\\\]|[^\]])*\]s}%%s#popcCsd|jpdS(Ns @LANG: indepgš™™™™™¹?((ttext((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyt analyse_textÐs( s [^%\'"/#]+s %(?=[^%]|$)s"(\\\\|\\"|[^"])*"s'(\\\\|\\'|[^'])*'s/\*(.|\n)*?\*/s//.*$\n?s\#.*$\n?s/(?!\*)(\\\\|\\/|[^/])*/R@(s [^}\'"\[/#]s }(?=[^%]|$)s }%(?=[^%]|$)s [^\\][\\][{}]s(>|\$|%|<|@|<>)/s/(?!\*)(\\\\|\\/|[^/])*/\*s /(?=[^/\*]|$)(RBRCRDRERFRGRLR RRRRR RMRO(((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyRs     !FcBs;eZdZdZddgZdgZd„Zd„ZRS(sO A lexer for `Ragel`_ in a Ruby host file. *New in Pygments 1.1.* sRagel in Ruby Hosts ragel-rubysragel-rbs*.rlcKs tt|ƒitt|dS(N(tsuperR#t__init__RR(tselftoptions((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyRQßscCs d|jS(Ns @LANG: ruby((RN((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyROãs(RBRCRDRERFRGRQRO(((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyR#Ôs    cBs8eZdZdZdgZdgZd„Zd„ZRS(sL A lexer for `Ragel`_ in a C host file. *New in Pygments 1.1.* sRagel in C Hostsragel-cs*.rlcKs tt|ƒitt|dS(N(RPRRQRR(RRRS((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyRQòscCs d|jS(Ns@LANG: c((RN((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyROös(RBRCRDRERFRGRQRO(((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyRçs    cBs8eZdZdZdgZdgZd„Zd„ZRS(sL A lexer for `Ragel`_ in a D host file. *New in Pygments 1.1.* sRagel in D Hostsragel-ds*.rlcKs tt|ƒitt|dS(N(RPR RQRR(RRRS((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyRQscCs d|jS(Ns@LANG: d((RN((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyROs(RBRCRDRERFRGRQRO(((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyR ús    cBs8eZdZdZdgZdgZd„Zd„ZRS(sN A lexer for `Ragel`_ in a CPP host file. *New in Pygments 1.1.* sRagel in CPP Hosts ragel-cpps*.rlcKs tt|ƒitt|dS(N(RPR!RQRR(RRRS((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyRQscCs d|jS(Ns @LANG: c++((RN((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyROs(RBRCRDRERFRGRQRO(((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyR! s    cBs8eZdZdZdgZdgZd„Zd„ZRS(sW A lexer for `Ragel`_ in an Objective C host file. *New in Pygments 1.1.* sRagel in Objective C Hosts ragel-objcs*.rlcKs tt|ƒitt|dS(N(RPR"RQRR(RRRS((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyRQ)scCs d|jS(Ns @LANG: objc((RN((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyRO.s(RBRCRDRERFRGRQRO(((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyR"s    cBs8eZdZdZdgZdgZd„Zd„ZRS(sO A lexer for `Ragel`_ in a Java host file. *New in Pygments 1.1.* sRagel in Java Hosts ragel-javas*.rlcKs tt|ƒitt|dS(N(RPR$RQRR(RRRS((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyRQ=scCs d|jS(Ns @LANG: java((RN((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyROAs(RBRCRDRERFRGRQRO(((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyR$2s    cBsËeZdZdZdgZgZdZdZdZdZ dZ h de fgd 6d e fd e fgd 6e d ƒe d ƒd edeee ee eieƒfdedfdedfdedeee eie eƒdfdedfdededeeie ee eie eƒdfdedeee eieƒdKfg d6de d fd!e fe d ƒd"ed#fd$edfgd6e d ƒe d ƒd%efd"ed#fd$edfd&ed'eee eiƒfd(ed)eee eiƒfdedfd*eee eƒdfd+ed,eee eie eƒfdedeeie eƒdfd-ed fg d6e d ƒe d ƒdedfd-efd.efd/efd0efd1eifd2eifd3efd4efd"ed#fd$edfd5ed fgd6e d ƒe d ƒd6efd7ed8e d9eeie ee ee eƒfd:ed fgd6e d ƒe d ƒd6efd7ed;d<iee e d=fƒd,eeie ee ee eƒfd:ed fgd6d7d<idLƒdCefdDeeeƒfdEeeieeiƒfd6edFfd:ed fgd6d7d<idMƒdCefd"edFfdHed fdEeeieeiƒfdIefgd#6ZdJ„ZRS(NsÀ Generic `ANTLR`_ Lexer. Should not be called directly, instead use DelegatingLexer for your target language. *New in Pygments 1.1.* .. _ANTLR: http://www.antlr.org/ tANTLRtantlrs[A-Za-z][A-Za-z_0-9]*s[A-Z][A-Za-z_0-9]*s[a-z][A-Za-z_0-9]*s\'(?:\\\\|\\\'|[^\']*)\'s[0-9]+s\s+R0s//.*$s/\*(.|\n)*?\*/R1s*(lexer|parser|tree)?(\s*)(grammar\b)(\s*)(s)(;)s options\bRSstokens\bRMs (scope)(\s*)(s )(\s*)({)tactions(catch|finally)\bt exceptions(@s)(\s*)(::)?(\s*)(s0((?:protected|private|public|fragment)\b)?(\s*)(s)(!)?s rule-altss rule-prelimsR=s\ns#pops\ss\[snested-arg-actions\{s returns\bs(throws)(\s+)(t)s (?:(,)(\s*)(s))+s(scope)(\s+)({)s (scope)(\s+)(s )(\s*)(;)R7s'(\\\\|\\'|[^'])*'s"(\\\\|\\"|[^"])*"s<<([^>]|>[^>])>>s\$?[A-Z_][A-Za-z_0-9]*s\$?[a-z_][A-Za-z_0-9]*s-(\+|\||->|=>|=|\(|\)|\.\.|\.|\?|\*|\^|!|\#|~)R6R<R9R>s)(\s*)(=)?(\s*)(s )?(\s*)(;)RAs)(\s*)(=)(\s*)(R?s\*s[^\${}\'"/\\]+s//.*$\n?s/(?!\*)(\\\\|\\/|[^/])*/s\\(?!%)R@s)+s(\\)(%)s(\$[a-zA-Z]+)(\.?)(text|value)?s#pushs[^\$\[\]\'"/]+s\]s(\\\\|\\\]|\\\[|[^\[\]])+cCstid|tiƒS(Ns^\s*grammar\s+[a-zA-Z0-9]+\s*;(tretsearchtM(RN((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyROs(s rule-altss rule-prelims(s[^\${}\'"/\\]+s"(\\\\|\\"|[^"])*"s'(\\\\|\\'|[^'])*'s//.*$\n?s/\*(.|\n)*?\*/s/(?!\*)(\\\\|\\/|[^/])*/s\\(?!%)R@(s[^\$\[\]\'"/]+s"(\\\\|\\"|[^"])*"s'(\\\\|\\'|[^'])*'s//.*$\n?s/\*(.|\n)*?\*/s/(?!\*)(\\\\|\\/|[^/])*/R@(RBRCRDRERFRGt_idt _TOKEN_REFt _RULE_REFt_STRING_LITERALt_INTRR RRR RtClassRRKtLabelRtConstantR RLR R tPropertyRMRO(((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyR%Esº                                               (   cBs;eZdZdZdgZddgZd„Zd„ZRS(s> `ANTLR`_ with CPP Target *New in Pygments 1.1.* sANTLR With CPP Targets antlr-cpps*.Gs*.gcKs tt|ƒitt|dS(N(RPR)RQRR%(RRRS((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyRQ(scCs&ti|ƒotid|tiƒS(Ns^\s*language\s*=\s*C\s*;(R%RORYRZR[(RN((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyRO+s(RBRCRDRERFRGRQRO(((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyR)s    cBs;eZdZdZdgZddgZd„Zd„ZRS(sF `ANTLR`_ with Objective-C Target *New in Pygments 1.1.* sANTLR With ObjectiveC Targets antlr-objcs*.Gs*.gcKs tt|ƒitt|dS(N(RPR+RQRR%(RRRS((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyRQ;scCs ti|ƒotid|ƒS(Ns^\s*language\s*=\s*ObjC\s*;(R%RORYRZ(RN((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyRO?s(RBRCRDRERFRGRQRO(((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyR+0s    cBs>eZdZdZddgZddgZd„Zd„ZRS(s= `ANTLR`_ with C# Target *New in Pygments 1.1.* sANTLR With C# Targets antlr-csharpsantlr-c#s*.Gs*.gcKs tt|ƒitt|dS(N(RPR*RQRR%(RRRS((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyRQOscCs&ti|ƒotid|tiƒS(Ns^\s*language\s*=\s*CSharp2\s*;(R%RORYRZR[(RN((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyROSs(RBRCRDRERFRGRQRO(((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyR*Ds    cBs;eZdZdZdgZddgZd„Zd„ZRS(sA `ANTLR`_ with Python Target *New in Pygments 1.1.* sANTLR With Python Targets antlr-pythons*.Gs*.gcKs tt|ƒitt|dS(N(RPR&RQRR%(RRRS((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyRQcscCs&ti|ƒotid|tiƒS(Ns^\s*language\s*=\s*Python\s*;(R%RORYRZR[(RN((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyROgs(RBRCRDRERFRGRQRO(((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyR&Xs    cBs;eZdZdZdgZddgZd„Zd„ZRS(s> `ANTLR`_ with Java Target *New in Pygments 1.1* sANTLR With Java Targets antlr-javas*.Gs*.gcKs tt|ƒitt|dS(N(RPR,RQRR%(RRRS((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyRQwscCsti|ƒodS(NgÍÌÌÌÌÌì?(R%RO(RN((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyRO{s(RBRCRDRERFRGRQRO(((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyR,ls    cBs>eZdZdZddgZddgZd„Zd„ZRS(s? `ANTLR`_ with Ruby Target *New in Pygments 1.1.* sANTLR With Ruby Targets antlr-rubysantlr-rbs*.Gs*.gcKs tt|ƒitt|dS(N(RPR(RQRR%(RRRS((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyRQ‹scCs&ti|ƒotid|tiƒS(Ns^\s*language\s*=\s*Ruby\s*;(R%RORYRZR[(RN((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyROs(RBRCRDRERFRGRQRO(((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyR(€s    cBs;eZdZdZdgZddgZd„Zd„ZRS(s? `ANTLR`_ with Perl Target *New in Pygments 1.1.* sANTLR With Perl Targets antlr-perls*.Gs*.gcKs tt|ƒitt|dS(N(RPR'RQRR%(RRRS((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyRQŸscCs&ti|ƒotid|tiƒS(Ns^\s*language\s*=\s*Perl5\s*;(R%RORYRZR[(RN((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyRO£s(RBRCRDRERFRGRQRO(((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyR'”s    cBs>eZdZdZddgZddgZd„Zd„ZRS(sG `ANTLR`_ with ActionScript Target *New in Pygments 1.1.* sANTLR With ActionScript Targetsantlr-assantlr-actionscripts*.Gs*.gcKs tt|ƒitt|dS(N(RPR-RQRR%(RRRS((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyRQ³scCs&ti|ƒotid|tiƒS(Ns#^\s*language\s*=\s*ActionScript\s*;(R%RORYRZR[(RN((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyRO·s(RBRCRDRERFRGRQRO(((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyR-¨s    (8RDRYtpygments.lexerRRRRRRtpygments.tokenRRRR R R R R RRRRtpygments.lexers.compiledRRRRRtpygments.lexers.dotnetRtpygments.lexers.agileRRRtpygments.lexers.webRtpygments.lexers.specialRt__all__RRR#RR R!R"R$R%R)R+R*R&R,R(R'R-(((s;/usr/lib/python2.6/site-packages/pygments/lexers/parsers.pyt s> .R(     ]SØ