2SPDX-FileCopyrightText: 2017 Eliakin Costa <eliakim170@gmail.com>
4SPDX-License-Identifier: GPL-2.0-or-later
9from .
import debuggerformatter
15 bdb.Bdb.__init__(self)
18 self.
debugq = multiprocessing.Queue()
32 with open(filename,
"rb")
as fp:
33 statement =
"exec(compile(%r, %r, 'exec'))" % \
36 except Exception
as e:
40 name = frame.f_code.co_name
or "<unknown>"
43 """Handler that executes with every line of code"""
52 "lineNumber": str(frame.f_lineno)
54 "frame": {
"firstLineNumber": co.co_firstlineno,
55 "locals": debuggerformatter.format_data(frame.f_locals),
56 "globals": debuggerformatter.format_data(frame.f_globals)
62 return self.set_quit()
71 return self.set_quit()
74 name = frame.f_code.co_name
or "<unknown>"
76 if name ==
'<module>':
83 """Coroutine for updating the UI"""
87 await asyncio.sleep(0.3)
91 self.
scripter.uicontroller.repaintDebugArea()
VertexDescriptor get(PredecessorMap const &m, VertexDescriptor v)
void put(PredecessorMap &m, VertexDescriptor key, VertexDescriptor value)
user_exception(self, frame, exception)
user_return(self, frame, value)
__init__(self, scripter, cmd)
user_call(self, frame, args)