vscode-go语言插件,分析(三)

goDebugConfiguration.ts 配置
GoDebugConfigurationProvider 实现vscode.DebugConfigurationProvider接口

goDebugFactory.ts 调试工厂
GoDebugAdapterDescriptorFactory 描述工厂,实现vscode.DebugAdapterDescriptorFactory接口
GoDebugAdapterTrackerFactory 跟踪器,能够读取记录调试器和vscode之间的通信
ProxyDebugAdapter 代理调试适配器,为调试器和vscode提供双向的数据流交互,实现vscode.DebugAdapter接口
DelveDAPOutputAdapter 处理Dap调试器的输入和输出,继承ProxyDebugAdapter

startDebugSession.ts 启动调试会话

关键

  • vscode插件,继承dap协议基类实现接口。 相当于hook接管了调试器协议。
  • 语言调试器服务实现了,json-rpc协议接口,提供返回相应的数据结构,就实现了调试器的功能。
  • 调试器插件,负责启动命令行调试器服务。当然也可以直接与远端的调试器服务通信。
  • 这一块儿,官方没有给出完整的介绍和说明,资料寥寥数语,代码云山雾绕,脱裤子放屁💨,delve插件代码多此一举,杀鸡用牛刀,耍花枪。
posted @ 2023-12-08 22:43  jiftle  阅读(58)  评论(0编辑  收藏  举报