Как работает Pycharm? Как они подключились к переводчику? - PullRequest
0 голосов
/ 03 января 2019

Я знаю, как использовать отладчик PyCharm, но это только углубило мое любопытство о том, как он решает задачу такой тесной связи с интерпретатором Python.

Имеет ли cPython какие-то ловушки для интерпретаторов, спрятанные в себеили PyCharm каким-то образом копирует исходный код, обрабатывает код и затем выполняет его?

1 Ответ

0 голосов
/ 03 января 2019

Благодаря @unholySheep я смог перейти с github src на PyDev.Debugger обратно на sys.settrace , что привело к публикации на модуле Python недели на settrace .

Как только скрипт трассировки имеет кадр стека, это, скорее всего, нетривиальная задача проверки содержимого стека кадра и / или использования code/exec/eval для выполнения операторов наблюдения в контексте.Что касается точек останова, это было бы тривиально, поскольку это всего лишь задача сопоставления номера строки фрейма и пути к файлу.

...