12345678910111213141516171819202122 |
- using System.Linq;
- using ArcToolkitCLI.Commands;
- using CommandLine;
- namespace ArcToolkitCLI
- {
- internal class Program
- {
- private static int Main(string[] args)
- {
- var commandTypes = typeof(Program).Assembly.GetTypes()
- .Where(t => !t.IsInterface && !t.IsAbstract &&
- typeof(ICommand).IsAssignableFrom(t)).ToArray();
- return new Parser(with =>
- {
- with.IgnoreUnknownArguments = true;
- with.AutoHelp = true;
- with.HelpWriter = Parser.Default.Settings.HelpWriter;
- }).ParseArguments(args, commandTypes).MapResult((object t) => ((ICommand)t).Run(), errs => 1);
- }
- }
- }
|