[libc][test] Adjust header paths in tests (#119623)
[llvm-project.git] / lldb / tools / lldb-dap / src-ts / extension.ts
blob71fd48298f8f531c84ad92f986359d1c408c1865
1 import * as path from "path";
2 import * as util from "util";
3 import * as vscode from "vscode";
5 import {
6   LLDBDapDescriptorFactory,
7   isExecutable,
8 } from "./debug-adapter-factory";
9 import { DisposableContext } from "./disposable-context";
11 /**
12  * This class represents the extension and manages its life cycle. Other extensions
13  * using it as as library should use this class as the main entry point.
14  */
15 export class LLDBDapExtension extends DisposableContext {
16   constructor() {
17     super();
18     this.pushSubscription(
19       vscode.debug.registerDebugAdapterDescriptorFactory(
20         "lldb-dap",
21         new LLDBDapDescriptorFactory(),
22       ),
23     );
25     this.pushSubscription(
26       vscode.workspace.onDidChangeConfiguration(async (event) => {
27         if (event.affectsConfiguration("lldb-dap.executable-path")) {
28           const dapPath = vscode.workspace
29             .getConfiguration("lldb-dap")
30             .get<string>("executable-path");
32           if (dapPath) {
33             if (await isExecutable(dapPath)) {
34               return;
35             }
36           }
37           LLDBDapDescriptorFactory.showLLDBDapNotFoundMessage(dapPath || "");
38         }
39       }),
40     );
41   }
44 /**
45  * This is the entry point when initialized by VS Code.
46  */
47 export function activate(context: vscode.ExtensionContext) {
48   context.subscriptions.push(new LLDBDapExtension());