Skip to content

Commit 48bda7d

Browse files
Added code generation (#261)
Removed all extra classes and methods that are replaced by code generation
1 parent 20c60b6 commit 48bda7d

File tree

110 files changed

+256
-4080
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

110 files changed

+256
-4080
lines changed

sample/SampleServer/FoldingRangeHandler.cs

+1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
using System.Threading;
22
using System.Threading.Tasks;
33
using OmniSharp.Extensions.LanguageServer.Protocol.Client.Capabilities;
4+
using OmniSharp.Extensions.LanguageServer.Protocol.Document;
45
using OmniSharp.Extensions.LanguageServer.Protocol.Models;
56
using OmniSharp.Extensions.LanguageServer.Server;
67

Original file line numberDiff line numberDiff line change
@@ -1,45 +1,18 @@
1-
using System;
21
using System.Threading;
32
using System.Threading.Tasks;
43
using MediatR;
54
using OmniSharp.Extensions.JsonRpc;
5+
using OmniSharp.Extensions.JsonRpc.Generation;
66

77
namespace OmniSharp.Extensions.DebugAdapter.Protocol.Events
88
{
99

1010
[Parallel, Method(EventNames.Breakpoint, Direction.ServerToClient)]
11+
[GenerateHandlerMethods, GenerateRequestMethods]
1112
public interface IBreakpointHandler : IJsonRpcNotificationHandler<BreakpointEvent> { }
1213

1314
public abstract class BreakpointHandler : IBreakpointHandler
1415
{
1516
public abstract Task<Unit> Handle(BreakpointEvent request, CancellationToken cancellationToken);
1617
}
17-
18-
public static class BreakpointExtensions
19-
{
20-
public static IDebugAdapterClientRegistry OnBreakpoint(this IDebugAdapterClientRegistry registry, Action<BreakpointEvent> handler)
21-
{
22-
return registry.AddHandler(EventNames.Breakpoint, NotificationHandler.For(handler));
23-
}
24-
25-
public static IDebugAdapterClientRegistry OnBreakpoint(this IDebugAdapterClientRegistry registry, Action<BreakpointEvent, CancellationToken> handler)
26-
{
27-
return registry.AddHandler(EventNames.Breakpoint, NotificationHandler.For(handler));
28-
}
29-
30-
public static IDebugAdapterClientRegistry OnBreakpoint(this IDebugAdapterClientRegistry registry, Func<BreakpointEvent, Task> handler)
31-
{
32-
return registry.AddHandler(EventNames.Breakpoint, NotificationHandler.For(handler));
33-
}
34-
35-
public static IDebugAdapterClientRegistry OnBreakpoint(this IDebugAdapterClientRegistry registry, Func<BreakpointEvent, CancellationToken, Task> handler)
36-
{
37-
return registry.AddHandler(EventNames.Breakpoint, NotificationHandler.For(handler));
38-
}
39-
40-
public static void SendBreakpoint(this IDebugAdapterServer mediator, BreakpointEvent @params)
41-
{
42-
mediator.SendNotification(@params);
43-
}
44-
}
4518
}
Original file line numberDiff line numberDiff line change
@@ -1,45 +1,17 @@
1-
using System;
2-
using System.Threading;
1+
using System.Threading;
32
using System.Threading.Tasks;
43
using MediatR;
54
using OmniSharp.Extensions.JsonRpc;
5+
using OmniSharp.Extensions.JsonRpc.Generation;
66

77
namespace OmniSharp.Extensions.DebugAdapter.Protocol.Events
88
{
9-
109
[Parallel, Method(EventNames.Capabilities, Direction.ServerToClient)]
10+
[GenerateRequestMethods, GenerateHandlerMethods]
1111
public interface ICapabilitiesHandler : IJsonRpcNotificationHandler<CapabilitiesEvent> { }
1212

1313
public abstract class CapabilitiesHandler : ICapabilitiesHandler
1414
{
1515
public abstract Task<Unit> Handle(CapabilitiesEvent request, CancellationToken cancellationToken);
1616
}
17-
18-
public static class CapabilitiesExtensions
19-
{
20-
public static IDebugAdapterClientRegistry OnCapabilities(this IDebugAdapterClientRegistry registry, Action<CapabilitiesEvent> handler)
21-
{
22-
return registry.AddHandler(EventNames.Capabilities, NotificationHandler.For(handler));
23-
}
24-
25-
public static IDebugAdapterClientRegistry OnCapabilities(this IDebugAdapterClientRegistry registry, Action<CapabilitiesEvent, CancellationToken> handler)
26-
{
27-
return registry.AddHandler(EventNames.Capabilities, NotificationHandler.For(handler));
28-
}
29-
30-
public static IDebugAdapterClientRegistry OnCapabilities(this IDebugAdapterClientRegistry registry, Func<CapabilitiesEvent, Task> handler)
31-
{
32-
return registry.AddHandler(EventNames.Capabilities, NotificationHandler.For(handler));
33-
}
34-
35-
public static IDebugAdapterClientRegistry OnCapabilities(this IDebugAdapterClientRegistry registry, Func<CapabilitiesEvent, CancellationToken, Task> handler)
36-
{
37-
return registry.AddHandler(EventNames.Capabilities, NotificationHandler.For(handler));
38-
}
39-
40-
public static void SendCapabilities(this IDebugAdapterServer mediator, CapabilitiesEvent @params)
41-
{
42-
mediator.SendNotification(@params);
43-
}
44-
}
4517
}
Original file line numberDiff line numberDiff line change
@@ -1,45 +1,18 @@
1-
using System;
2-
using System.Threading;
1+
using System.Threading;
32
using System.Threading.Tasks;
43
using MediatR;
54
using OmniSharp.Extensions.JsonRpc;
5+
using OmniSharp.Extensions.JsonRpc.Generation;
66

77
namespace OmniSharp.Extensions.DebugAdapter.Protocol.Events
88
{
99

1010
[Parallel, Method(EventNames.Continued, Direction.ServerToClient)]
11+
[GenerateHandlerMethods, GenerateRequestMethods]
1112
public interface IContinuedHandler : IJsonRpcNotificationHandler<ContinuedEvent> { }
1213

1314
public abstract class ContinuedHandler : IContinuedHandler
1415
{
1516
public abstract Task<Unit> Handle(ContinuedEvent request, CancellationToken cancellationToken);
1617
}
17-
18-
public static class ContinuedExtensions
19-
{
20-
public static IDebugAdapterClientRegistry OnContinued(this IDebugAdapterClientRegistry registry, Action<ContinuedEvent> handler)
21-
{
22-
return registry.AddHandler(EventNames.Continued, NotificationHandler.For(handler));
23-
}
24-
25-
public static IDebugAdapterClientRegistry OnContinued(this IDebugAdapterClientRegistry registry, Action<ContinuedEvent, CancellationToken> handler)
26-
{
27-
return registry.AddHandler(EventNames.Continued, NotificationHandler.For(handler));
28-
}
29-
30-
public static IDebugAdapterClientRegistry OnContinued(this IDebugAdapterClientRegistry registry, Func<ContinuedEvent, Task> handler)
31-
{
32-
return registry.AddHandler(EventNames.Continued, NotificationHandler.For(handler));
33-
}
34-
35-
public static IDebugAdapterClientRegistry OnContinued(this IDebugAdapterClientRegistry registry, Func<ContinuedEvent, CancellationToken, Task> handler)
36-
{
37-
return registry.AddHandler(EventNames.Continued, NotificationHandler.For(handler));
38-
}
39-
40-
public static void SendContinued(this IDebugAdapterServer mediator, ContinuedEvent @params)
41-
{
42-
mediator.SendNotification(@params);
43-
}
44-
}
4518
}
+3-30
Original file line numberDiff line numberDiff line change
@@ -1,45 +1,18 @@
1-
using System;
2-
using System.Threading;
1+
using System.Threading;
32
using System.Threading.Tasks;
43
using MediatR;
54
using OmniSharp.Extensions.JsonRpc;
5+
using OmniSharp.Extensions.JsonRpc.Generation;
66

77
namespace OmniSharp.Extensions.DebugAdapter.Protocol.Events
88
{
99

1010
[Parallel, Method(EventNames.Exited, Direction.ServerToClient)]
11+
[GenerateHandlerMethods, GenerateRequestMethods]
1112
public interface IExitedHandler : IJsonRpcNotificationHandler<ExitedEvent> { }
1213

1314
public abstract class ExitedHandler : IExitedHandler
1415
{
1516
public abstract Task<Unit> Handle(ExitedEvent request, CancellationToken cancellationToken);
1617
}
17-
18-
public static class ExitedExtensions
19-
{
20-
public static IDebugAdapterClientRegistry OnExited(this IDebugAdapterClientRegistry registry, Action<ExitedEvent> handler)
21-
{
22-
return registry.AddHandler(EventNames.Exited, NotificationHandler.For(handler));
23-
}
24-
25-
public static IDebugAdapterClientRegistry OnExited(this IDebugAdapterClientRegistry registry, Action<ExitedEvent, CancellationToken> handler)
26-
{
27-
return registry.AddHandler(EventNames.Exited, NotificationHandler.For(handler));
28-
}
29-
30-
public static IDebugAdapterClientRegistry OnExited(this IDebugAdapterClientRegistry registry, Func<ExitedEvent, Task> handler)
31-
{
32-
return registry.AddHandler(EventNames.Exited, NotificationHandler.For(handler));
33-
}
34-
35-
public static IDebugAdapterClientRegistry OnExited(this IDebugAdapterClientRegistry registry, Func<ExitedEvent, CancellationToken, Task> handler)
36-
{
37-
return registry.AddHandler(EventNames.Exited, NotificationHandler.For(handler));
38-
}
39-
40-
public static void SendExited(this IDebugAdapterServer mediator, ExitedEvent @params)
41-
{
42-
mediator.SendNotification(@params);
43-
}
44-
}
4518
}
Original file line numberDiff line numberDiff line change
@@ -1,45 +1,18 @@
1-
using System;
2-
using System.Threading;
1+
using System.Threading;
32
using System.Threading.Tasks;
43
using MediatR;
54
using OmniSharp.Extensions.JsonRpc;
5+
using OmniSharp.Extensions.JsonRpc.Generation;
66

77
namespace OmniSharp.Extensions.DebugAdapter.Protocol.Events
88
{
99

1010
[Parallel, Method(EventNames.Initialized, Direction.ServerToClient)]
11+
[GenerateHandlerMethods, GenerateRequestMethods]
1112
public interface IInitializedHandler : IJsonRpcNotificationHandler<InitializedEvent> { }
1213

1314
public abstract class InitializedHandler : IInitializedHandler
1415
{
1516
public abstract Task<Unit> Handle(InitializedEvent request, CancellationToken cancellationToken);
1617
}
17-
18-
public static class InitializedExtensions
19-
{
20-
public static IDebugAdapterClientRegistry OnInitialized(this IDebugAdapterClientRegistry registry, Action<InitializedEvent> handler)
21-
{
22-
return registry.AddHandler(EventNames.Initialized, NotificationHandler.For(handler));
23-
}
24-
25-
public static IDebugAdapterClientRegistry OnInitialized(this IDebugAdapterClientRegistry registry, Action<InitializedEvent, CancellationToken> handler)
26-
{
27-
return registry.AddHandler(EventNames.Initialized, NotificationHandler.For(handler));
28-
}
29-
30-
public static IDebugAdapterClientRegistry OnInitialized(this IDebugAdapterClientRegistry registry, Func<InitializedEvent, Task> handler)
31-
{
32-
return registry.AddHandler(EventNames.Initialized, NotificationHandler.For(handler));
33-
}
34-
35-
public static IDebugAdapterClientRegistry OnInitialized(this IDebugAdapterClientRegistry registry, Func<InitializedEvent, CancellationToken, Task> handler)
36-
{
37-
return registry.AddHandler(EventNames.Initialized, NotificationHandler.For(handler));
38-
}
39-
40-
public static void SendInitialized(this IDebugAdapterServer mediator, InitializedEvent @params)
41-
{
42-
mediator.SendNotification(@params);
43-
}
44-
}
4518
}
Original file line numberDiff line numberDiff line change
@@ -1,45 +1,18 @@
1-
using System;
2-
using System.Threading;
1+
using System.Threading;
32
using System.Threading.Tasks;
43
using MediatR;
54
using OmniSharp.Extensions.JsonRpc;
5+
using OmniSharp.Extensions.JsonRpc.Generation;
66

77
namespace OmniSharp.Extensions.DebugAdapter.Protocol.Events
88
{
99

1010
[Parallel, Method(EventNames.LoadedSource, Direction.ServerToClient)]
11+
[GenerateHandlerMethods, GenerateRequestMethods]
1112
public interface ILoadedSourceHandler : IJsonRpcNotificationHandler<LoadedSourceEvent> { }
1213

1314
public abstract class LoadedSourceHandler : ILoadedSourceHandler
1415
{
1516
public abstract Task<Unit> Handle(LoadedSourceEvent request, CancellationToken cancellationToken);
1617
}
17-
18-
public static class LoadedSourceExtensions
19-
{
20-
public static IDebugAdapterClientRegistry OnLoadedSource(this IDebugAdapterClientRegistry registry, Action<LoadedSourceEvent> handler)
21-
{
22-
return registry.AddHandler(EventNames.LoadedSource, NotificationHandler.For(handler));
23-
}
24-
25-
public static IDebugAdapterClientRegistry OnLoadedSource(this IDebugAdapterClientRegistry registry, Action<LoadedSourceEvent, CancellationToken> handler)
26-
{
27-
return registry.AddHandler(EventNames.LoadedSource, NotificationHandler.For(handler));
28-
}
29-
30-
public static IDebugAdapterClientRegistry OnLoadedSource(this IDebugAdapterClientRegistry registry, Func<LoadedSourceEvent, Task> handler)
31-
{
32-
return registry.AddHandler(EventNames.LoadedSource, NotificationHandler.For(handler));
33-
}
34-
35-
public static IDebugAdapterClientRegistry OnLoadedSource(this IDebugAdapterClientRegistry registry, Func<LoadedSourceEvent, CancellationToken, Task> handler)
36-
{
37-
return registry.AddHandler(EventNames.LoadedSource, NotificationHandler.For(handler));
38-
}
39-
40-
public static void SendLoadedSource(this IDebugAdapterServer mediator, LoadedSourceEvent @params)
41-
{
42-
mediator.SendNotification(@params);
43-
}
44-
}
4518
}
+3-30
Original file line numberDiff line numberDiff line change
@@ -1,45 +1,18 @@
1-
using System;
2-
using System.Threading;
1+
using System.Threading;
32
using System.Threading.Tasks;
43
using MediatR;
54
using OmniSharp.Extensions.JsonRpc;
5+
using OmniSharp.Extensions.JsonRpc.Generation;
66

77
namespace OmniSharp.Extensions.DebugAdapter.Protocol.Events
88
{
99

1010
[Parallel, Method(EventNames.Module, Direction.ServerToClient)]
11+
[GenerateHandlerMethods, GenerateRequestMethods]
1112
public interface IModuleHandler : IJsonRpcNotificationHandler<ModuleEvent> { }
1213

1314
public abstract class ModuleHandler : IModuleHandler
1415
{
1516
public abstract Task<Unit> Handle(ModuleEvent request, CancellationToken cancellationToken);
1617
}
17-
18-
public static class ModuleExtensions
19-
{
20-
public static IDebugAdapterClientRegistry OnModule(this IDebugAdapterClientRegistry registry, Action<ModuleEvent> handler)
21-
{
22-
return registry.AddHandler(EventNames.Module, NotificationHandler.For(handler));
23-
}
24-
25-
public static IDebugAdapterClientRegistry OnModule(this IDebugAdapterClientRegistry registry, Action<ModuleEvent, CancellationToken> handler)
26-
{
27-
return registry.AddHandler(EventNames.Module, NotificationHandler.For(handler));
28-
}
29-
30-
public static IDebugAdapterClientRegistry OnModule(this IDebugAdapterClientRegistry registry, Func<ModuleEvent, Task> handler)
31-
{
32-
return registry.AddHandler(EventNames.Module, NotificationHandler.For(handler));
33-
}
34-
35-
public static IDebugAdapterClientRegistry OnModule(this IDebugAdapterClientRegistry registry, Func<ModuleEvent, CancellationToken, Task> handler)
36-
{
37-
return registry.AddHandler(EventNames.Module, NotificationHandler.For(handler));
38-
}
39-
40-
public static void SendModule(this IDebugAdapterServer mediator, ModuleEvent @params)
41-
{
42-
mediator.SendNotification(@params);
43-
}
44-
}
4518
}
+3-30
Original file line numberDiff line numberDiff line change
@@ -1,44 +1,17 @@
1-
using System;
2-
using System.Threading;
1+
using System.Threading;
32
using System.Threading.Tasks;
43
using MediatR;
54
using OmniSharp.Extensions.JsonRpc;
5+
using OmniSharp.Extensions.JsonRpc.Generation;
66

77
namespace OmniSharp.Extensions.DebugAdapter.Protocol.Events
88
{
99
[Parallel, Method(EventNames.Output, Direction.ServerToClient)]
10+
[GenerateHandlerMethods, GenerateRequestMethods]
1011
public interface IOutputHandler : IJsonRpcNotificationHandler<OutputEvent> { }
1112

1213
public abstract class OutputHandler : IOutputHandler
1314
{
1415
public abstract Task<Unit> Handle(OutputEvent request, CancellationToken cancellationToken);
1516
}
16-
17-
public static class OutputExtensions
18-
{
19-
public static IDebugAdapterClientRegistry OnOutput(this IDebugAdapterClientRegistry registry, Action<OutputEvent> handler)
20-
{
21-
return registry.AddHandler(EventNames.Output, NotificationHandler.For(handler));
22-
}
23-
24-
public static IDebugAdapterClientRegistry OnOutput(this IDebugAdapterClientRegistry registry, Action<OutputEvent, CancellationToken> handler)
25-
{
26-
return registry.AddHandler(EventNames.Output, NotificationHandler.For(handler));
27-
}
28-
29-
public static IDebugAdapterClientRegistry OnOutput(this IDebugAdapterClientRegistry registry, Func<OutputEvent, Task> handler)
30-
{
31-
return registry.AddHandler(EventNames.Output, NotificationHandler.For(handler));
32-
}
33-
34-
public static IDebugAdapterClientRegistry OnOutput(this IDebugAdapterClientRegistry registry, Func<OutputEvent, CancellationToken, Task> handler)
35-
{
36-
return registry.AddHandler(EventNames.Output, NotificationHandler.For(handler));
37-
}
38-
39-
public static void SendOutput(this IDebugAdapterServer mediator, OutputEvent @params)
40-
{
41-
mediator.SendNotification(@params);
42-
}
43-
}
4417
}

0 commit comments

Comments
 (0)