parameters: (self, arg)
return_statement: return True
docstring: p - step on the current assembly instruction
          next - step on the current assembly instruction
          step - step on the current assembly instruction
docstring_summary: p - step on the current assembly instruction
          next - step on the current assembly instruction
          step - step on the current assembly instruction
docstring_tokens: p - step on the current assembly instruction next - step on the current assembly instruction step - step on the current assembly instruction
function: def do_step(self, arg):
          """
          p - step on the current assembly instruction
          next - step on the current assembly instruction
          step - step on the current assembly instruction
          """
          if self.cmdprefix:
              raise CmdError("prefix not allowed")
          if self.lastEvent is None:
              raise CmdError("no current process set")
          if arg:     # XXX this check is to be removed
              raise CmdError("too many arguments")
          pid     = self.lastEvent.get_pid()
          thread  = self.lastEvent.get_thread()
          pc      = thread.get_pc()
          code    = thread.disassemble(pc, 16)[0]
          size    = code[1]
          opcode  = code[2].lower()
          if ' ' in opcode:
              opcode  = opcode[ : opcode.find(' ') ]
          if opcode in self.jump_instructions or opcode in ('int', 'ret', 'retn'):
              return self.do_trace(arg)
          address = pc + size
  ##        print(hex(pc), hex(address), size   # XXX DEBUG
          self.debug.stalk_at(pid, address)
          return True
function_tokens: def do_step ( self , arg ) : if self . cmdprefix : raise CmdError ( "prefix not allowed" ) if self . lastEvent is None : raise CmdError ( "no current process set" ) if arg : # XXX this check is to be removed raise CmdError ( "too many arguments" ) pid = self . lastEvent . get_pid ( ) thread = self . lastEvent . get_thread ( ) pc = thread . get_pc ( ) code = thread . disassemble ( pc , 16 ) [ 0 ] size = code [ 1 ] opcode = code [ 2 ] . lower ( ) if ' ' in opcode : opcode = opcode [ : opcode . find ( ' ' ) ] if opcode in self . jump_instructions or opcode in ( 'int' , 'ret' , 'retn' ) : return self . do_trace ( arg ) address = pc + size ##        print(hex(pc), hex(address), size   # XXX DEBUG self . debug . stalk_at ( pid , address ) return True