Viewing File: /usr/lib64/python2.7/Tools/scripts/objgraph.pyo

ó
ó—sjc@sùddlZddlZddlZddlZdZdZdZejdƒZd„Z	d„Z
iZiZiZ
iZd„Zd	„Zd
„Zd„Zd„Zd
„ZedkrõyejeƒƒWqõek
rñejdƒqõXndS(iÿÿÿÿNt	TRGDSBAECtUVtNntrgdsbavucs(.*):	?........ (.) (.*)$cCs4|j|ƒr#||j|ƒn
|g||<dS(N(thas_keytappend(tdicttkeytitem((s./usr/lib64/python2.7/Tools/scripts/objgraph.pytstore)scCs-d}x|D]}|d|}q
W|dS(Ntt i((tlisttsR((s./usr/lib64/python2.7/Tools/scripts/objgraph.pytflat2s
c
Csx|jƒ}|sPntj|ƒdkr8|qntjd \\}}\}}\}}\}}	|||!|||	!|||!}
}}|tkrÁtt||
ƒtt|
|ƒq|tkrðtt	|
|ƒtt
||
ƒq|tkr|
d|d|GHqqdS(Niit:s: unknown type (treadlinetmatchertsearchtregstdefinitionsRtdef2filetfile2deft	externalst
file2undeft
undef2filetignore(
tfpRtratrbtr1atr1btr2atr2btr3atr3btfntnamettype((s./usr/lib64/python2.7/Tools/scripts/objgraph.pyt	readinputBs"1)cCs¸tjƒ}|jƒx›|D]“}|dGHt|}|jƒxm|D]e}t|ƒdkrhd}nd}tj|ƒs‘d||dGHqGd||tt|ƒGHqGWqWdS(NRis	s		s *undefined(RtkeystsorttlenRRR
(tflisttfilenametelisttextttabs((s./usr/lib64/python2.7/Tools/scripts/objgraph.pytprintcalleeXs

	


	cCsÀtjƒ}|jƒx£|D]›}g}x2t|D]&}tj|ƒr4|t|}q4q4W|r¯|jƒ|dGHd}x8|D]$}||kr¢d|GHn|}q„Wq|dGHqWdS(NRR	s	s: unused(RR'R(RR(tfilesR+tcallerstlabeltlastfnR#((s./usr/lib64/python2.7/Tools/scripts/objgraph.pytprintcallerks 


	

cCs¶i}xKtjƒD]=}x4t|D](}tj|ƒs$t|||ƒq$q$WqW|jƒ}|jƒxE|D]=}|dGH||}|jƒx|D]}d|GHq›WqqWdS(NRs	(RR'RRRR((tundefsR+R-R,R*((s./usr/lib64/python2.7/Tools/scripts/objgraph.pyt
printundef€s

	


cCs}tj}tjt_tjƒ}|jƒxB|D]:}tt|ƒdkr2dG|GdGtt|ƒGHq2q2W|t_dS(Niswarning:smultiply defined:(tsyststdouttstderrRR'R(R)R
(t
savestdouttnamesR$((s./usr/lib64/python2.7/Tools/scripts/objgraph.pytwarndups‘s	

c	Csìy#tjtjddƒ\}}Wn_tjk
r„tjt_dGtjjtjdƒGdGHdGHdGHdGHd	GHd
GHdGHdSXd}}}xS|D]K\}}|dkr»d}qš|d
krÐd}qš|dkršd}qšqšW||ko|kodknr!d}}}n|s3dg}nx=|D]5}|dkr\t	tj
ƒq:t	t|dƒƒq:Wtƒ|||dk}|r¬|r¢dGHnt
ƒn|rÊ|rÀdGHntƒn|rè|rÞdGHntƒndS(NitcdusUsage:is[-cdu] [file] ...s -c: print callers per objectfiles -d: print callees per objectfiles$-u: print usage of undefined symbolss.If none of -cdu is specified, all are assumed.s6Use "nm -o" to generate the input (on IRIX: "nm -Bo"),s"e.g.: nm -o /lib/libc.a | objgraphs-us-cs-dt-trs,---------------All callees------------------s,---------------Undefined callees------------s,---------------All Callers------------------(tgetoptR7targvterrorR9R8tostpathtbasenameR&tstdintopenR<R/R6R4(	toptlisttargstoptutoptctoptdtopttvoidR+tmore((s./usr/lib64/python2.7/Tools/scripts/objgraph.pytmainžsX#		
'



t__main__i(R7RCR@treRRRtcompileRRR
RRRRR&R/R4R6R<RPt__name__texittKeyboardInterrupt(((s./usr/lib64/python2.7/Tools/scripts/objgraph.pyt<module>s0								
	5

Back to Directory File Manager