def run(self, args): if not self.proc.curframe: self.errmsg("No frame selected.") return False names = list(self.proc.curframe.f_globals.keys()) if len(args) > 0 and args[0] == '*' : self.section("globals") self.msg(self.columnize_commands(names)) elif len(args) == 0: names.sort() for name in sorted(names): val = self.proc.getval(name) Mpp.pp(val, self.settings['width'], self.msg_nocr, self.msg, prefix='%s =' % name) pass else: for name in args: if name in names: val = self.proc.getval(name) Mpp.pp(val, self.settings['width'], self.msg_nocr, self.msg, prefix='%s =' % name) pass else: self.errmsg("%s is not a global variable" % name) pass pass return False
def run(self, args): if not self.proc.curframe: self.errmsg("No frame selected.") return False names = list(self.proc.curframe.f_globals.keys()) if len(args) > 0 and args[0] == '*': self.section("globals") self.msg(self.columnize_commands(names)) elif len(args) == 0: names.sort() for name in sorted(names): val = self.proc.getval(name) Mpp.pp(val, self.settings['width'], self.msg_nocr, self.msg, prefix='%s =' % name) pass else: for name in args: if name in names: val = self.proc.getval(name) Mpp.pp(val, self.settings['width'], self.msg_nocr, self.msg, prefix='%s =' % name) pass else: self.errmsg("%s is not a global variable" % name) pass pass return False
def print_stack_entry(proc_obj, i_stack, color="plain", opts={}): frame_lineno = proc_obj.stack[len(proc_obj.stack) - i_stack - 1] frame, lineno = frame_lineno intf = proc_obj.intf[-1] if frame is proc_obj.curframe: intf.msg_nocr(format_token(Mformat.Arrow, "->", highlight=color)) else: intf.msg_nocr("##") intf.msg( "%d %s" % (i_stack, format_stack_entry(proc_obj.debugger, frame_lineno, color=color))) if opts.get("source", False): filename = frame2file(proc_obj.core, frame) line = linecache.getline(filename, lineno, frame.f_globals) intf.msg(line) pass if opts.get("deparse", False): name = frame.f_code.co_name if frame.f_lasti == -1: last_i = 0 else: last_i = frame.f_lasti deparsed, nodeInfo = deparse_offset(frame.f_code, name, last_i, None) if name == "<module>": name == "module" if nodeInfo: extractInfo = deparsed.extract_node_info(nodeInfo) intf.msg(extractInfo.selectedLine) intf.msg(extractInfo.markerLine) pass if opts.get("full", False): names = list(frame.f_locals.keys()) for name in sorted(names): if _with_local_varname.match(name): val = frame.f_locals[name] else: val = proc_obj.getval(name, frame.f_locals) pass width = opts.get("width", 80) Mpp.pp(val, width, intf.msg_nocr, intf.msg, prefix="%s =" % name) pass deparsed, nodeInfo = deparse_offset(frame.f_code, name, frame.f_lasti, None) if name == "<module>": name == "module" if nodeInfo: extractInfo = deparsed.extract_node_info(nodeInfo) intf.msg(extractInfo.selectedLine) intf.msg(extractInfo.markerLine) pass
def run(self, args): if not self.proc.curframe: self.errmsg("No frame selected.") return False var_names = list(self.proc.curframe.f_globals.keys()) var_names.sort() for var_name in var_names: val = self.proc.getval(var_name) Mpp.pp(val, self.settings['width'], self.msg_nocr, self.msg, prefix='%s =' % var_name) pass return False
def run(self, args): # Not sure if this __return__ stuff works. # if '__return__' in self.proc.curframe.f_locals: # val = self.proc.curframe.f_locals['__return__'] # Mpp.pp(val, self.settings['width'], self.msg_nocr, self.msg) # elif self.proc.event == 'return': if self.proc.event in ['return', 'exception']: val = self.proc.event_arg Mpp.pp(val, self.settings['width'], self.msg_nocr, self.msg) else: self.errmsg("Must be in a 'return' or 'exception' event " "rather than a %s event." % self.proc.event) pass return
def run(self, args): if not self.proc.curframe: self.errmsg("No frame selected") return False names = list(self.proc.curframe.f_locals.keys()) if len(args) > 0 and args[0] == '*': self.section("locals") self.msg(self.columnize_commands(names)) elif len(args) == 0: for name in sorted(names): # ALB: a fix for a problem with the new 'with' # statement. It seems to work, but I don't know exactly # why... (the problem was in self.getval called by # info_locals) if _with_local_varname.match(name): val = self.proc.curframe.f_locals[name] else: val = self.proc.getval(name) pass Mpp.pp(val, self.settings['width'], self.msg_nocr, self.msg, prefix='%s =' % name) pass pass else: for name in args: # ALB: a fix for a problem with the new 'with' # statement. It seems to work, but I don't know exactly # why... (the problem was in self.getval called by # info_locals) if name in names: if _with_local_varname.match(name): val = self.proc.curframe.f_locals[name] else: val = self.proc.getval(name) pass Mpp.pp(val, self.settings['width'], self.msg_nocr, self.msg, prefix='%s =' % name) else: self.errmsg("%s is not a local variable" % name) pass return False
def run(self, args): if not self.proc.curframe: self.errmsg("No frame selected") return False names = list(self.proc.curframe.f_locals.keys()) if len(args) > 0 and args[0] == '*' : self.section("locals") self.msg(self.columnize_commands(names)) elif len(args) == 0: for name in sorted(names): # ALB: a fix for a problem with the new 'with' # statement. It seems to work, but I don't know exactly # why... (the problem was in self.getval called by # info_locals) if _with_local_varname.match(name): val = self.proc.curframe.f_locals[name] else: val = self.proc.getval(name) pass Mpp.pp(val, self.settings['width'], self.msg_nocr, self.msg, prefix='%s =' % name) pass pass else: for name in args: # ALB: a fix for a problem with the new 'with' # statement. It seems to work, but I don't know exactly # why... (the problem was in self.getval called by # info_locals) if name in names: if _with_local_varname.match(name): val = self.proc.curframe.f_locals[name] else: val = self.proc.getval(name) pass Mpp.pp(val, self.settings['width'], self.msg_nocr, self.msg, prefix='%s =' % name) else: self.errmsg("%s is not a local variable" % name) pass return False
def run(self, args): arg = ' '.join(args[1:]) val = self.proc.eval(arg) Mpp.pp(val, self.settings['width'], self.msg_nocr, self.msg) return False
def run(self, args): arg = " ".join(args[1:]) val = self.proc.eval(arg) pp(val, self.settings["width"], self.msg_nocr, self.msg) return False
def run(self, args): if not self.proc.curframe: self.errmsg("No frame selected") return False try: opts, args = getopt( args, "hl", ["help", "list"], ) except GetoptError as err: # print help information and exit: self.errmsg( str(err) ) # will print something like "option -a not recognized" return list_only = False for o, a in opts: if o in ("-h", "--help"): self.proc.commands["help"].run(["help", "info", "locals"]) return elif o in ("-l", "--list"): list_only = True else: self.errmsg("unhandled option '%s'" % o) pass pass names = list(self.proc.curframe.f_locals.keys()) if list_only: for name in names: self.msg(name) return if len(args) > 0 and args[0] == "*": self.section("locals") self.msg(self.columnize_commands(names)) elif len(args) == 0: for name in sorted(names): # ALB: a fix for a problem with the new 'with' # statement. It seems to work, but I don't know exactly # why... (the problem was in self.getval called by # info_locals) if _with_local_varname.match(name): val = self.proc.curframe.f_locals[name] else: val = self.proc.getval(name) pass Mpp.pp( val, self.settings["width"], self.msg_nocr, self.msg, prefix="%s =" % name, ) pass pass else: for name in args: # ALB: a fix for a problem with the new 'with' # statement. It seems to work, but I don't know exactly # why... (the problem was in self.getval called by # info_locals) if name in names: if _with_local_varname.match(name): val = self.proc.curframe.f_locals[name] else: val = self.proc.getval(name) pass Mpp.pp( val, self.settings["width"], self.msg_nocr, self.msg, prefix="%s =" % name, ) else: self.errmsg("%s is not a local variable" % name) pass return False