Ñò Žf¯Jc @sVdZddkZddklZlZlZlZlZddkl Z l Z l Z l Z l Z lZlZlZlZlZddklZddklZddklZdd d d d gZd „Zdefd„ƒYZd efd„ƒYZd efd„ƒYZdefd„ƒYZd efd„ƒYZ d efd„ƒYZ!dS(sË pygments.lexers.dotnet ~~~~~~~~~~~~~~~~~~~~~~ Lexers for .net languages. :copyright: Copyright 2006-2009 by the Pygments team, see AUTHORS. :license: BSD, see LICENSE for details. iÿÿÿÿN(t RegexLexertDelegatingLexertbygroupstusingtthis( t PunctuationtTexttCommenttOperatortKeywordtNametStringtNumbertLiteraltOther(tget_choice_opt(t unistring(tXmlLexert CSharpLexertBooLexert VbNetLexertCSharpAspxLexertVbNetAspxLexercCs4|iddƒiddƒiddƒiddƒS( Nu\u\\u-u\-u[u\[u]u\](treplace(tst((s:/usr/lib/python2.6/site-packages/pygments/lexers/dotnet.pyt_escapescBsßeZdZdZddgZdgZdgZeiei Bei BZ hdd6de i e ie ie ie id d e i e ie ie ie ie ie ie ie ie id d 6d ee iddddddƒƒddee idddddddddddƒ ƒd d6ZhZeZxeiƒD]\ZZhdedede e!e"ƒe#i$e%e&ƒfde#i'fd e%fd!e%fd"e(i)fd#e(i*fd$e%fd%e&fd&e&fd'e+fd(e+fd)e+i,fd*e-fd+e(i.fd,e e/e%e/ƒfd-e/fd.e e/e&ƒfd/e/i0fd0e e/e%ƒd1fd2e e/e%ƒd3fee#fgd46ee#i1d5fgd16d6e%d5fd7ed8e#i2d5fgd36ee`_ source code. Additional options accepted: `unicodelevel` Determines which Unicode characters this lexer allows for identifiers. The possible values are: * ``none`` -- only the ASCII letters and numbers are allowed. This is the fastest selection. * ``basic`` -- all Unicode characters from the specification except category ``Lo`` are allowed. * ``full`` -- all Unicode characters as specified in the C# specs are allowed. Note that this means a considerable slowdown since the ``Lo`` category has more than 40,000 characters in it! The default value is ``basic``. *New in Pygments 0.8.* sC#tcsharpsc#s*.css text/x-csharps@?[_a-zA-Z][a-zA-Z0-9_]*tnones@?[_t]t[s]*tbasics @?(?:_|[^tLutLltLttLmtLotNls])s[^tNdtPctCftMntMctfulls ^([ \t]*(?:s(?:\[\])?\s+)+?)(s )(\s*)(\()s ^\s*\[.*?\]s[^\S\n]+s\\\ns//.*?\ns/[*](.|\n)*?[*]/s\ns[~!%^&*()+=|\[\]:;,.<>/?-]s[{}]s@"(\\\\|\\"|[^"])*"s"(\\\\|\\"|[^"\n])*["\n]s '\\.'|'[^\\]'sA[0-9](\.[0-9]*)?([eE][+-][0-9]+)?[flFLdD]?|0[xX][0-9a-fA-F]+[Ll]?sZ#[ \t]*(if|endif|else|elif|define|undef|line|error|warning|region|endregion|pragma)\b.*?\ns\b(extern)(\s+)(alias)\bs£(abstract|as|base|break|case|catch|checked|const|continue|default|delegate|do|else|enum|event|explicit|extern|false|finally|fixed|for|foreach|goto|if|implicit|in|interface|internal|is|lock|new|null|operator|out|override|params|private|protected|public|readonly|ref|return|sealed|sizeof|stackalloc|static|switch|this|throw|true|try|typeof|unchecked|unsafe|virtual|void|while|get|set|new|partial|yield|add|remove|value)\bs (global)(::)s_(bool|byte|char|decimal|double|float|int|long|object|sbyte|short|string|uint|ulong|ushort)\b\??s(class|struct)(\s+)tclasss(namespace|using)(\s+)t namespacetroots#pops(?=\()t(s|\.)+cKskt|d|iiƒdƒ}||ijo|ii|ƒ|_n|i||_ti||dS(Nt unicodelevelR( Rttokenstkeyst _all_tokenst __class__tprocess_tokendeft_tokensRt__init__(tselftoptionstlevel((s:/usr/lib/python2.6/site-packages/pygments/lexers/dotnet.pyR6‚s (4t__name__t __module__t__doc__tnametaliasest filenamest mimetypestret MULTILINEtDOTALLtUNICODEtflagstuniRR R!R"R$R%R&R'R(R)Rt allexcepttlevelsR0tTruettoken_variantstitemst levelnametcs_identRRRR tFunctionRRt AttributeRtSinglet MultilineR tCharR tPreprocR tTypetClasst NamespaceR6(((s:/usr/lib/python2.6/site-packages/pygments/lexers/dotnet.pyRs\   |i                  )cBsùeZdZdZdgZdgZdgZhdefdei fdei dfd e fd efd efd e i fd eifdeifde fdefdefdeeeƒdfdeeeƒdfdeeeƒdfdeifdeifdeifdei fdefdeifdefdeifd eifd!eiifd"eifgd#6dei d$fd%ei d&fd'ei fd(ei fgd6deid&fgd6deid&fgd6d)eid&fgd6ZRS(*s< For `Boo `_ source code. tBootboos*.boos text/x-boos\s+s (#|//).*$s/[*]tcomments []{}:(),.;[]s\\\ns\\s(in|is|and|or|not)\bs/(\\\\|\\/|[^/\s])/s@/(\\\\|\\/|[^/])*/s=~|!=|==|<<|>>|[-+/*%=<>&^|]sO(as|abstract|callable|constructor|destructor|do|import|enum|event|final|get|interface|internal|of|override|partial|private|protected|public|return|set|static|struct|transient|virtual|yield|super|and|break|cast|continue|elif|else|ensure|except|for|given|goto|if|in|is|isa|not|or|otherwise|pass|raise|ref|try|unless|when|while|from|as)\bsdef(?=\s+\(.*?\))s (def)(\s+)tfuncnames (class)(\s+)t classnames(namespace)(\s+)R,sã(?R?R@RRRPRQRRtWordR tRegexR RR tBuiltintDoubleR tFloattOcttHextIntegertLongRNRURVR0(((s:/usr/lib/python2.6/site-packages/pygments/lexers/dotnet.pyRsR                       cBsÐeZdZdZddgZddgZddgZeiei BZ hde i fd e fd e fd efd efd eifdefdeifdefdeee ƒdfdeee ƒdfdeee ƒdfdeifdeifdefdedfde fdeifdeifdeifd eifd!eifd"e fgd#6d$efd%ed&fd'efgd6d(e id&fgd6d(e id&fgd6d)e id&fgd6Z RS(*sm For `Visual Basic.NET `_ source code. sVB.netsvb.nettvbnets*.vbs*.bass text/x-vbnets text/x-vbas ^\s*<.*?>s\s+s\ns rem\b.*?\ns'.*?\nsŠ#If\s.*?\sThen|#ElseIf\s.*?\sThen|#End\s+If|#Const|#ExternalSource.*?\n|#End\s+ExternalSource|#Region.*?\n|#End\s+Region|#ExternalChecksums [\(\){}!#,.:]s9Option\s+(Strict|Explicit|Compare)\s+(On|Off|Binary|Text)sE(?>=|<<|>>|:=|<=|>=|<>|[-&*/\\^+=<>]t"tstrings[a-zA-Z_][a-zA-Z0-9_]*[%&@!#$]?s#.*?#s%(\d+\.\d*|\d*\.\d+)([fF][+-]?[0-9]+)?s\d+([SILDFR]|US|UI|UL)?s&H[0-9a-f]+([SILDFR]|US|UI|UL)?s&O[0-7]+([SILDFR]|US|UI|UL)?s_\nR-s""s"C?s#pops[^"]+s[a-z_][a-z0-9_]*s[a-z_][a-z0-9_.]*(!R:R;R<R=R>R?R@RARBt IGNORECASERER RORRRSRR t DeclarationRRTRR\R R tDateR R`RcRNRURVR0(((s:/usr/lib/python2.6/site-packages/pygments/lexers/dotnet.pyRÐsZ                      tGenericAspxLexercBseZdZdZgZgZeiZhde e i e e i ƒfde e eƒe e eƒƒfde eƒfde eƒfgd6ZRS(s" Lexer for ASP.NET pages. saspx-gens(<%[@=#]?)(.*?)(%>)s()(.*?)()s (.+?)(?=<)s.+R-(R:R;R<R=R?R@RARCRERR tTagRRRR0(((s:/usr/lib/python2.6/site-packages/pygments/lexers/dotnet.pyRk%s cBsMeZdZdZdgZddddddgZgZd„Zd „ZRS( s8 Lexer for highligting C# within ASP.NET pages. saspx-css*.aspxs*.asaxs*.ascxs*.ashxs*.asmxs*.axdcKs tt|ƒitt|dS(N(tsuperRR6RRk(R7R8((s:/usr/lib/python2.6/site-packages/pygments/lexers/dotnet.pyR6FscCsLtid|tiƒdj odStid|tiƒdj odSdS(NsPage\s*Language="C#"gš™™™™™É?sscript[^>]+language=["\']C#g333333Ã?gü©ñÒMbP?(RAtsearchtItNone(ttext((s:/usr/lib/python2.6/site-packages/pygments/lexers/dotnet.pyt analyse_textJs ( R:R;R<R=R>R?R@R6Rr(((s:/usr/lib/python2.6/site-packages/pygments/lexers/dotnet.pyR<s  cBsMeZdZdZdgZddddddgZgZd„Zd „ZRS( sF Lexer for highligting Visual Basic.net within ASP.NET pages. saspx-vbs*.aspxs*.asaxs*.ascxs*.ashxs*.asmxs*.axdcKs tt|ƒitt|dS(N(RmRR6RRk(R7R8((s:/usr/lib/python2.6/site-packages/pygments/lexers/dotnet.pyR6[scCsLtid|tiƒdj odStid|tiƒdj odSdS(NsPage\s*Language="Vb"gš™™™™™É?sscript[^>]+language=["\']vbg333333Ã?(RARnRoRp(Rq((s:/usr/lib/python2.6/site-packages/pygments/lexers/dotnet.pyRr_s( R:R;R<R=R>R?R@R6Rr(((s:/usr/lib/python2.6/site-packages/pygments/lexers/dotnet.pyRQs  ("R<RAtpygments.lexerRRRRRtpygments.tokenRRRRR R R R R Rt pygments.utilRtpygmentsRRFtpygments.lexers.webRt__all__RRRRRkRR(((s:/usr/lib/python2.6/site-packages/pygments/lexers/dotnet.pyt s (F   pCU