Skip to content

Commit 21c89be

Browse files
committed
Simplify target-specific message output code in CLI.
1 parent 02049cf commit 21c89be

File tree

1 file changed

+30
-40
lines changed

1 file changed

+30
-40
lines changed

src/CLI/Generator.cs

Lines changed: 30 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -216,55 +216,45 @@ public void Postprocess(Driver driver, ASTContext ctx)
216216
public void Run()
217217
{
218218
StringBuilder messageBuilder = new StringBuilder();
219-
messageBuilder.Append("Generating ");
219+
messageBuilder.Append($"Generating {GetGeneratorKindName(options.Kind)}");
220+
messageBuilder.Append($" bindings for {GetPlatformName(options.Platform)} {options.Architecture}");
220221

221-
switch(options.Kind)
222-
{
223-
case GeneratorKind.CLI:
224-
messageBuilder.Append("C++/CLI");
225-
break;
226-
case GeneratorKind.CSharp:
227-
messageBuilder.Append("C#");
228-
break;
229-
}
230-
231-
messageBuilder.Append(" bindings for ");
232-
233-
switch (options.Platform)
234-
{
235-
case TargetPlatform.Linux:
236-
messageBuilder.Append("Linux");
237-
break;
238-
case TargetPlatform.MacOS:
239-
messageBuilder.Append("OSX");
240-
break;
241-
case TargetPlatform.Windows:
242-
messageBuilder.Append("Windows");
243-
break;
244-
}
245-
246-
messageBuilder.Append(" ");
247-
248-
switch (options.Architecture)
249-
{
250-
case TargetArchitecture.x86:
251-
messageBuilder.Append("x86");
252-
break;
253-
case TargetArchitecture.x64:
254-
messageBuilder.Append("x64");
255-
break;
256-
}
257-
258-
if(options.Cpp11ABI)
222+
if (options.Cpp11ABI)
259223
messageBuilder.Append(" (GCC C++11 ABI)");
260224

261225
messageBuilder.Append("...");
262-
263226
Console.WriteLine(messageBuilder.ToString());
264227

265228
ConsoleDriver.Run(this);
266229

267230
Console.WriteLine();
268231
}
232+
233+
private static string GetPlatformName(TargetPlatform? platform)
234+
{
235+
if (!platform.HasValue)
236+
return string.Empty;
237+
238+
switch (platform.Value)
239+
{
240+
case TargetPlatform.MacOS:
241+
return "macOS";
242+
default:
243+
return platform.ToString();
244+
}
245+
}
246+
247+
private static string GetGeneratorKindName(GeneratorKind kind)
248+
{
249+
switch (kind)
250+
{
251+
case GeneratorKind.CLI:
252+
return "C++/CLI";
253+
case GeneratorKind.CSharp:
254+
return "C#";
255+
default:
256+
return kind.ToString();
257+
}
258+
}
269259
}
270260
}

0 commit comments

Comments
 (0)