Esempio n. 1
0
        private void InvokeHelp(HelpOptions help)
        {
            string instruction = "Syntax: ProcessManager.exe verb [options]\n\nAvailable verbs:";

            if (help.All)
            {
                var allOptions = CommandLineOptions.GetAllOptions(typeof(RootOptions));
                ConsoleRenderer.RenderDocument(View.HelpAllOptionsList(allOptions, instruction));
                return;
            }

            Type optionsType = typeof(RootOptions);

            if (help.Verb != null)
            {
                instruction = $"Syntax: ProcessManager.exe {help.Verb} [options]\n\nAvailable {help.Verb} options:";
                optionsType = CommandLineOptions.GetVerbTypeByName(optionsType, help.Verb);
            }

            if (optionsType == null)
            {
                ConsoleRenderer.RenderDocument(View.Error($"Verb {help.Verb} not supported."));
                return;
            }

            var options = CommandLineOptions.GetOptions(optionsType);

            ConsoleRenderer.RenderDocument(View.HelpOptionsList(options, instruction));
        }
Esempio n. 2
0
        public static void Main(string[] args)
        {
            /*
             * args = {
             *     -name hhhh -age 69.3d -arr okay then ecks dee "no u" -efficiency 21 40
             * }
             */

            foreach (string arg in args)
            {
                Console.WriteLine($"Argument: {arg}");
            }

            ArgsParser  parser = new ArgsParser(args);
            HelpOptions help   = new HelpOptions("Demo");

            help.AddCommand("doit", ParameterType.Flag, "DO it lol", parser);
            help.AddCommand("delsys32", ParameterType.Flag, "Delete system32", parser);
            help.AddCommand("name", ParameterType.String, "The name of the person", parser);
            help.AddCommand("arr", ParameterType.StringArray, "An array of stuff idek lol", parser);
            help.AddCommand("age", ParameterType.Number, "The age of the person", parser);
            help.AddCommand("efficiency", ParameterType.Range, "The efficiency of the person", parser);
            help.Write();
            CommandOptions options = parser.ForceParse(0);

            if (options.HasFlag("doit"))
            {
            }
            else
            {
                Console.WriteLine("Doesnt have DoIt parameter");
            }

            if (options.HasFlag("delsys32"))
            {
                Console.WriteLine("Deleting system32...");
            }

            if (options.TryGetString("name", out string name))
            {
                Console.WriteLine($"Name: {name}");
            }

            if (options.TryGetNumber("age", out double age))
            {
                Console.WriteLine($"Age: {age}");
            }

            if (options.TryGetRange("efficiency", out double a, out double b))
            {
                Console.WriteLine($"Efficiency: {a}, {b}");
            }

            if (options.TryGetStringArray("arr", out string[] arr))
Esempio n. 3
0
 private void InvokeHelp(HelpOptions help)
 {
     HelpView.Help(HelpParts.All).Render();
 }
Esempio n. 4
0
 /// <include file='doc.xml' path='doc/ShowHelp/*'/>
 public abstract void ShowHelp(string path, string topic, HelpOptions options);
Esempio n. 5
0
 private void InvokeHelp(HelpOptions help)
 {
     HelpView.HelpVerb(help.Verb, help.All).Render();
 }
Esempio n. 6
0
 /// <include file='doc.xml' path='doc/ShowHelp/*'/>
 public abstract void ShowHelp(string path, string topic, HelpOptions options);