/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser
NameSizeModeActions
ply/-0755rm
ast_transforms.py35680755editdlrm
ast_transforms.pyc28910644editdlrm
c_ast.py233360755editdlrm
c_ast.pyc435420644editdlrm
c_generator.py135700755editdlrm
c_generator.pyc205930644editdlrm
c_lexer.py144470755editdlrm
c_lexer.pyc169800644editdlrm
c_parser.py622120755editdlrm
c_parser.pyc681880644editdlrm
lextab.py74570755editdlrm
lextab.pyc71340644editdlrm
plyparser.py15940755editdlrm
plyparser.pyc29080644editdlrm
yacctab.py1295680755editdlrm
yacctab.pyc1018710644editdlrm
_ast_gen.py86630755editdlrm
_ast_gen.pyc98050644editdlrm
_build_tables.py8510755editdlrm
_build_tables.pyc6620644editdlrm
_c_ast.cfg41800644editdlrm
__init__.py29030755editdlrm
__init__.pyc29720644editdlrm
Edit: /usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pyc (16980B)
Wc@sRddkZddkZddklZddklZdefdYZdS(iNi(tlex(tTOKENtCLexerc>BseZdZdZdZdZdZdZdZdZ dZ dZ hZ xTe D]LZ e d joe e d.dZ?dZ@dZAdZBdZCdZDdZEdZFdZGdZHdZIdZJdZKdZLdZMdZNdZOdZPdZQdZRdZSdZTdZUdZVdZWdZXdZYdZZdZ[dZ\dZ]dZ^dZ_dZ`dZadZbdZcdZddZedZfdZgdZhdZidZjdZke1ddZle1ddZme&Zne1e+dZoe1e.dZpe1edZqe1edZre1edZse1edZte1edZue1e!dZve1e"dZwe1e#dZxe1e$dZye1e'dZze1e(dZ{e1edZ|dZ}RS(s A lexer for the C language. After building it, set the input text with input(), and call token() to get new tokens. The public attribute filename can be set to an initial filaneme, but the lexer will update it upon #line directives. cCs^||_||_||_||_d|_d|_tid|_ tid|_ dS(sb Create a new Lexer. error_func: An error function. Will be called with an error message, line and column as arguments, in case of an error during lexing. on_lbrace_func, on_rbrace_func: Called when an LBRACE or RBRACE is encountered (likely to push/pop type_lookup_func's scope) type_lookup_func: A type lookup function. Given a string, it must return True IFF this string is a name of a type that was defined with a typedef earlier. ts([ ]*line\W)|([ ]*\d+)s [ ]*pragma\WN( t error_functon_lbrace_functon_rbrace_functtype_lookup_functfilenametNonet last_tokentretcompilet line_patterntpragma_pattern(tselfRRRR((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pyt__init__s      cKstid|||_dS(s Builds the lexer from the specification. Must be called after the lexer object is created. This method exists separately, because the PLY manual warns against calling lex.lex inside __init__ tobjectN(Rtlexer(Rtkwargs((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pytbuild:scCsd|i_dS(s? Resets the internal line number counter of the lexer. iN(Rtlineno(R((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pyt reset_linenoDscCs|ii|dS(N(Rtinput(Rttext((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pyRIscCs|ii|_|iS(N(RttokenR (R((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pyRLscCs)|iiidd|i}|i|S(s3 Find the column of the token in its line. s i(Rtlexdatatrfindtlexpos(RRtlast_cr((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pytfind_tok_columnPscCs>|i|}|i||d|d|iiddS(Nii(t_make_tok_locationRRtskip(RtmsgRtlocation((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pyt_error[scCs|i|i|fS(N(RR(RR((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pyR`st_BOOLt_COMPLEXtAUTOtBREAKtCASEtCHARtCONSTtCONTINUEtDEFAULTtDOtDOUBLEtELSEtENUMtEXTERNtFLOATtFORtGOTOtIFtINLINEtINTtLONGtREGISTERtOFFSETOFtRESTRICTtRETURNtSHORTtSIGNEDtSIZEOFtSTATICtSTRUCTtSWITCHtTYPEDEFtUNIONtUNSIGNEDtVOIDtVOLATILEtWHILEt_Boolt_ComplextIDtTYPEIDt INT_CONST_DECt INT_CONST_OCTt INT_CONST_HEXt INT_CONST_BINt FLOAT_CONSTtHEX_FLOAT_CONSTt CHAR_CONSTt WCHAR_CONSTtSTRING_LITERALtWSTRING_LITERALtPLUStMINUStTIMEStDIVIDEtMODtORtANDtNOTtXORtLSHIFTtRSHIFTtLORtLANDtLNOTtLTtLEtGTtGEtEQtNEtEQUALSt TIMESEQUALtDIVEQUALtMODEQUALt PLUSEQUALt MINUSEQUALt LSHIFTEQUALt RSHIFTEQUALtANDEQUALtXOREQUALtOREQUALtPLUSPLUSt MINUSMINUStARROWtCONDOPtLPARENtRPARENtLBRACKETtRBRACKETtLBRACEtRBRACEtCOMMAtPERIODtSEMItCOLONtELLIPSIStPPHASHs[a-zA-Z_$][0-9a-zA-Z_$]*s0[xX]s [0-9a-fA-F]+s0[bB]s[01]+sD(([uU]ll)|([uU]LL)|(ll[uU]?)|(LL[uU]?)|([uU][lL])|([lL][uU]?)|[uU])?s(0s)|([1-9][0-9]*t)s0[0-7]*s 0[0-7]*[89]s([a-zA-Z._~!=&\^\-\\?'"])s(\d+)s(x[0-9a-fA-F]+)s#([\\][^a-zA-Z._~^!=&\^\-\\?'"x0-7])s(\\(t|s))s ([^'\\\n]|t'tLs('s*\n)|('s*$)s[^' ]+')|('')|('s [^'\n]*')s ([^"\\\n]|t"s*"t*s([eE][-+]?[0-9]+)s([0-9]*\.[0-9]+)|([0-9]+\.)s((((s ?)|([0-9]+s ))[FfLl]?)s([pP][+-]?[0-9]+)s(((s)?\.s)|(s\.))t(s[FfLl]?)tpplinet exclusivetpppragmacCs|ii|iid|iio$|iidd|_|_nG|i i|iid|iio|iidnd|_ |SdS(s[ \t]*\#tposRRRN( R tmatchRRRtbeginR tpp_linet pp_filenameRttype(Rtt((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pytt_PPHASHs%% cCsF|idjo|id|n|iidid|_dS(Ns$filename before line number in #lineR(RR R#tvaluetlstriptrstripR(RR((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pytt_ppline_FILENAMEscCs$|idjo|i|_ndS(N(RR R(RR((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pytt_ppline_LINE_NUMBER scCsm|idjo|id|n6t|i|i_|idj o|i|_n|iiddS(s\nsline number missing in #linetINITIALN( RR R#tintRRRRR(RR((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pytt_ppline_NEWLINEs cCsdS(tlineN((RR((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pytt_ppline_PPLINE ss cCs|id|dS(Nsinvalid #line directive(R#(RR((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pytt_ppline_error&scCs&|iid7_|iiddS(s\niRN(RRR(RR((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pytt_pppragma_NEWLINE,scCsdS(tpragmaN((RR((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pytt_pppragma_PPPRAGMA1ss$ <>.-{}();=+-*/$%@&^~!?:,0123456789cCsdS(N((RR((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pytt_pppragma_STR7scCsdS(N((RR((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pyt t_pppragma_ID:scCs|id|dS(Nsinvalid #pragma directive(R#(RR((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pytt_pppragma_error=scCs"|ii|iid7_dS(s\n+s N(RRRtcount(RR((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pyt t_NEWLINEFss\+t-s\*t/t%s\|t&t~s\^s<>s\|\|s&&t!ts<=s>=s==s!=t=s\*=s/=s%=s\+=s-=s<<=s>>=s&=s\|=s\^=s\+\+s--s->s\?s\(s\)s\[s\]t,s\.t;t:s\.\.\.s\{cCs|i|S(N(R(RR((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pytt_LBRACEs s\}cCs|i|S(N(R(RR((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pytt_RBRACEs cCs|S(N((RR((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pyt t_FLOAT_CONSTscCs|S(N((RR((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pytt_HEX_FLOAT_CONSTscCs|S(N((RR((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pytt_INT_CONST_HEXscCs|S(N((RR((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pytt_INT_CONST_BINscCsd}|i||dS(NsInvalid octal constant(R#(RRR!((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pytt_BAD_CONST_OCTscCs|S(N((RR((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pytt_INT_CONST_OCTscCs|S(N((RR((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pytt_INT_CONST_DECscCs|S(N((RR((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pyt t_CHAR_CONSTscCs|S(N((RR((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pyt t_WCHAR_CONSTscCsd}|i||dS(Ns Unmatched '(R#(RRR!((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pytt_UNMATCHED_QUOTEscCs!d|i}|i||dS(NsInvalid char constant %s(RR#(RRR!((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pytt_BAD_CHAR_CONSTs cCs|S(N((RR((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pytt_WSTRING_LITERALscCsd}|i||dS(Ns#String contains invalid escape code(R#(RRR!((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pytt_BAD_STRING_LITERALscCsO|ii|id|_|idjo |i|io d|_n|S(NRKRL(t keyword_maptgetRRR(RR((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pytt_IDs# cCs+dt|id}|i||dS(NsIllegal character %si(treprRR#(RRR!((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pytt_errors(%s_BOOLs_COMPLEXsAUTOsBREAKsCASEsCHARsCONSTsCONTINUEsDEFAULTsDOsDOUBLEsELSEsENUMsEXTERNsFLOATsFORsGOTOsIFsINLINEsINTsLONGsREGISTERsOFFSETOFsRESTRICTsRETURNsSHORTsSIGNEDsSIZEOFsSTATICsSTRUCTsSWITCHsTYPEDEFsUNIONsUNSIGNEDsVOIDsVOLATILEsWHILE(;sIDsTYPEIDs INT_CONST_DECs INT_CONST_OCTs INT_CONST_HEXs INT_CONST_BINs FLOAT_CONSTsHEX_FLOAT_CONSTs CHAR_CONSTs WCHAR_CONSTsSTRING_LITERALsWSTRING_LITERALsPLUSsMINUSsTIMESsDIVIDEsMODsORsANDsNOTsXORsLSHIFTsRSHIFTsLORsLANDsLNOTsLTsLEsGTsGEsEQsNEsEQUALSs TIMESEQUALsDIVEQUALsMODEQUALs PLUSEQUALs MINUSEQUALs LSHIFTEQUALs RSHIFTEQUALsANDEQUALsXOREQUALsOREQUALsPLUSPLUSs MINUSMINUSsARROWsCONDOPsLPARENsRPARENsLBRACKETsRBRACKETsLBRACEsRBRACEsCOMMAsPERIODsSEMIsCOLONsELLIPSISsPPHASH(spplines exclusive(spppragmas exclusive(~t__name__t __module__t__doc__RRRRRRR#RtkeywordsRtkeywordtlowerttokenst identifiert hex_prefixt hex_digitst bin_prefixt bin_digitstinteger_suffix_opttdecimal_constanttoctal_constantt hex_constantt bin_constanttbad_octal_constantt simple_escapetdecimal_escapet hex_escapet bad_escapetescape_sequencet cconst_chart char_constt wchar_consttunmatched_quotetbad_char_constt string_chartstring_literaltwstring_literaltbad_string_literalt exponent_parttfractional_constanttfloating_constanttbinary_exponent_partthex_fractional_constantthex_floating_constanttstatesRRRRRRtt_ppline_ignoreRRRtt_pppragma_ignoreRRRtt_ignoreRtt_PLUStt_MINUStt_TIMEStt_DIVIDEtt_MODtt_ORtt_ANDtt_NOTtt_XORtt_LSHIFTtt_RSHIFTtt_LORtt_LANDtt_LNOTtt_LTtt_GTtt_LEtt_GEtt_EQtt_NEtt_EQUALSt t_TIMESEQUALt t_DIVEQUALt t_MODEQUALt t_PLUSEQUALt t_MINUSEQUALt t_LSHIFTEQUALt t_RSHIFTEQUALt t_ANDEQUALt t_OREQUALt t_XOREQUALt t_PLUSPLUSt t_MINUSMINUStt_ARROWtt_CONDOPtt_LPARENtt_RPARENt t_LBRACKETt t_RBRACKETtt_COMMAtt_PERIODtt_SEMItt_COLONt t_ELLIPSISRRtt_STRING_LITERALRRRRRRRRRRRRRRR(((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pyRsB !            &        (R tsystplyRtply.lexRRR(((sN/usr/lib/python2.6/site-packages/pycparser-2.14-py2.6.egg/pycparser/c_lexer.pyt s