ó ›à Rc@sddlZddlZdejfd„ƒYZdejfd„ƒYZdefd„ƒYZdefd „ƒYZeƒeƒeƒdS( iÿÿÿÿNtInfoTypePrintercBs)eZdZd„Zd„Zd„ZRS(sUGDB command to list all registered type-printers. Usage: info type-printers cCs tt|ƒjdtjƒdS(Nsinfo type-printers(tsuperRt__init__tgdbt COMMAND_DATA(tself((s2/usr/share/gdb/python/gdb/command/type_printers.pyRscCs]ttj|ƒdd„ƒ}x8|D]0}|jr=d}nd}d|j|fGHq%WdS(sPrint a list of type printers.tkeycSs|jS(N(tname(tx((s2/usr/share/gdb/python/gdb/command/type_printers.pyt%sts [disabled]s %s%sN(tsortedtcopytenabledR(Rt type_printerstsorted_type_printerstprinterR ((s2/usr/share/gdb/python/gdb/command/type_printers.pytlist_type_printers s    cCs±d}xHtjƒD]:}|jrd||jfGH|j|jƒd}qqWtjƒjrˆd|GH|jtjƒjƒd}ntjr­d|GH|jtjƒndS(s&GDB calls this to perform the command.R s%sType printers for %s:s s"%sType printers for program space:s%sGlobal type printers:N(RtobjfilesRtfilenameRtcurrent_progspace(Rtargtfrom_ttytseptobjfile((s2/usr/share/gdb/python/gdb/command/type_printers.pytinvoke-s      (t__name__t __module__t__doc__RRR(((s2/usr/share/gdb/python/gdb/command/type_printers.pyRs  t_EnableOrDisableCommandcBs5eZd„Zd„Zd„Zd„Zd„ZRS(cCs)tt|ƒj|tjƒ||_dS(N(RRRRRtsetting(RRR((s2/usr/share/gdb/python/gdb/command/type_printers.pyR>scCs?t}x2|D]*}||jkr |j|_t}q q W|S(N(tFalseRRR tTrue(RRtprinterstresulttp((s2/usr/share/gdb/python/gdb/command/type_printers.pytset_someBs    cCsªx£|jƒD]•}t}x2tjƒD]$}|j||jƒr&t}q&q&W|j|tjƒjƒrrt}n|j|tjƒrt}n|s d|GHq q WdS(s&GDB calls this to perform the command.sNo type printer named '%s'N(tsplitRRRR$RR R(RRRRtokR((s2/usr/share/gdb/python/gdb/command/type_printers.pyRJs   cCs:x3|D]+}|jj|ƒr|j|jƒqqWdS(N(Rt startswithtappend(RR"twordR!R#((s2/usr/share/gdb/python/gdb/command/type_printers.pytadd_someXs cCsig}x*tjƒD]}|j|||jƒqW|j||tjƒjƒ|j||tjƒ|S(N(RRR*RR(RttextR)R"R((s2/usr/share/gdb/python/gdb/command/type_printers.pytcomplete]s (RRRR$RR*R,(((s2/usr/share/gdb/python/gdb/command/type_printers.pyR=s     tEnableTypePrintercBseZdZd„ZRS(s†GDB command to enable the specified type printer. Usage: enable type-printer NAME NAME is the name of the type-printer. cCstt|ƒjtdƒdS(Nsenable type-printer(RR-RR (R((s2/usr/share/gdb/python/gdb/command/type_printers.pyRms(RRRR(((s2/usr/share/gdb/python/gdb/command/type_printers.pyR-estDisableTypePrintercBseZdZd„ZRS(sˆGDB command to disable the specified type-printer. Usage: disable type-printer NAME NAME is the name of the type-printer. cCstt|ƒjtdƒdS(Nsdisable type-printer(RR.RR(R((s2/usr/share/gdb/python/gdb/command/type_printers.pyRxs(RRRR(((s2/usr/share/gdb/python/gdb/command/type_printers.pyR.ps(R RtCommandRRR-R.(((s2/usr/share/gdb/python/gdb/command/type_printers.pyts  '(