-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDotNetBuildServer.cs
39 lines (34 loc) · 1 KB
/
DotNetBuildServer.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
// ReSharper disable UnusedMember.Global
// ReSharper disable InconsistentNaming
namespace HostApi;
/// <summary>
/// Type of .NET service.
/// </summary>
/// <seealso cref="DotNetBuildServerShutdown"/>
public enum DotNetBuildServer
{
/// <summary>
/// MSBuild build server
/// </summary>
MSBuild,
/// <summary>
/// VB/C# compiler build server
/// </summary>
VbCsCompiler,
/// <summary>
/// Razor build server
/// </summary>
Razor
}
internal static class DotNetBuildServerExtensions
{
[SuppressMessage("ReSharper", "UnusedParameter.Global")]
public static string[] ToArgs(this IEnumerable<DotNetBuildServer> servers, string name, string collectionSeparator) =>
servers.Select(server => server switch
{
DotNetBuildServer.MSBuild => "--msbuild",
DotNetBuildServer.VbCsCompiler => "--vbcscompiler",
DotNetBuildServer.Razor => "--razor",
_ => throw new ArgumentOutOfRangeException()
}).ToArray();
}