MCPcopy
hub / github.com/dotnet/vscode-csharp / registerCommands

Function registerCommands

src/omnisharp/features/commands.ts:31–84  ·  view source on GitHub ↗
(
    context: vscode.ExtensionContext,
    server: OmniSharpServer,
    platformInfo: PlatformInformation,
    eventStream: EventStream,
    monoResolver: IHostExecutableResolver,
    dotnetResolver: IHostExecutableResolver,
    workspaceInformationProvider: IWorkspaceDebugInformationProvider,
    outputChannel: vscode.OutputChannel
)

Source from the content-addressed store, hash-verified

29import { IWorkspaceDebugInformationProvider } from '../../shared/IWorkspaceDebugInformationProvider';
30
31export default function registerCommands(
32 context: vscode.ExtensionContext,
33 server: OmniSharpServer,
34 platformInfo: PlatformInformation,
35 eventStream: EventStream,
36 monoResolver: IHostExecutableResolver,
37 dotnetResolver: IHostExecutableResolver,
38 workspaceInformationProvider: IWorkspaceDebugInformationProvider,
39 outputChannel: vscode.OutputChannel
40): CompositeDisposable {
41 const disposable = new CompositeDisposable();
42 disposable.add(vscode.commands.registerCommand('o.restart', async () => restartOmniSharp(context, server)));
43 disposable.add(vscode.commands.registerCommand('o.pickProjectAndStart', async () => pickProjectAndStart(server)));
44 disposable.add(vscode.commands.registerCommand('o.showOutput', () => eventStream.post(new ShowOmniSharpChannel())));
45
46 disposable.add(
47 vscode.commands.registerCommand('dotnet.restore.project', async () =>
48 pickProjectAndDotnetRestore(server, eventStream)
49 )
50 );
51 disposable.add(
52 vscode.commands.registerCommand('dotnet.restore.all', async () => dotnetRestoreAllProjects(server, eventStream))
53 );
54
55 disposable.add(
56 vscode.commands.registerCommand('o.reanalyze.allProjects', async () => reAnalyzeAllProjects(server))
57 );
58 disposable.add(
59 vscode.commands.registerCommand('o.reanalyze.currentProject', async () => reAnalyzeCurrentProject(server))
60 );
61
62 // Register command for generating tasks.json and launch.json assets.
63 disposable.add(
64 vscode.commands.registerCommand('dotnet.generateAssets', async (selectedIndex) =>
65 generateAssets(workspaceInformationProvider, selectedIndex)
66 )
67 );
68
69 disposable.add(
70 vscode.commands.registerCommand('csharp.reportIssue', async () => {
71 const logOutputChannel = isLogOutputChannel(outputChannel);
72 return reportIssue(
73 context,
74 getDotnetInfo,
75 platformInfo.isValidPlatformForMono(),
76 logOutputChannel ? [logOutputChannel] : [],
77 dotnetResolver,
78 monoResolver
79 );
80 })
81 );
82
83 return new CompositeDisposable(disposable);
84}
85
86function isLogOutputChannel(channel: vscode.OutputChannel): vscode.LogOutputChannel | undefined {
87 const anyChannel = channel as any;

Callers 1

activateFunction · 0.50

Calls 12

addMethod · 0.95
generateAssetsFunction · 0.90
restartOmniSharpFunction · 0.85
pickProjectAndStartFunction · 0.85
dotnetRestoreAllProjectsFunction · 0.85
reAnalyzeAllProjectsFunction · 0.85
reAnalyzeCurrentProjectFunction · 0.85
isLogOutputChannelFunction · 0.85
reportIssueFunction · 0.85
postMethod · 0.80

Tested by

no test coverage detected