MCPcopy Create free account
hub / github.com/Codeya-IDE/deepin-ide / setupDebugEnv

Method setupDebugEnv

src/plugins/javascript/debugger/jsdebugger.cpp:222–253  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

220}
221
222void JSDebugger::setupDebugEnv()
223{
224 // intialize debugger.
225 QScriptEngineDebugger debugger;
226 connect(this, &JSDebugger::execCommand, [&](QScriptEngineDebugger::DebuggerAction debuggerAction){
227 debugger.action(debuggerAction)->trigger();
228 });
229 debugger.setAutoShowStandardWindow(false);
230 connect(&debugger, &QScriptEngineDebugger::evaluationResumed, this, &JSDebugger::slotEvaluationResumed);
231 connect(&debugger, &QScriptEngineDebugger::evaluationSuspended, this, &JSDebugger::slotEvaluationSuspended);
232
233 QScriptEngine engine;
234 debugger.attachTo(&engine);
235
236 addPagesToContext(debugger);
237
238 // evaluate js files.
239 auto prjService = dpfGetService(ProjectService);
240 auto sourceFiles = prjService->getActiveProjectInfo().sourceFiles();
241
242 interruptDebug();
243 for (auto sourceFile : sourceFiles) {
244 auto value = evaluateFile(engine, sourceFile);
245 qInfo() << value.toString();
246 }
247 removePagesFromContext();
248
249 disconnect(this, &JSDebugger::execCommand, nullptr, nullptr);
250
251 runState = kNoRun;
252 emit runStateChanged(kNoRun);
253}

Callers

nothing calls this directly

Calls 6

connectFunction · 0.85
sourceFilesMethod · 0.80
triggerMethod · 0.45
actionMethod · 0.45
getActiveProjectInfoMethod · 0.45
toStringMethod · 0.45

Tested by

no test coverage detected