public CommandLineOptionBase(CommandLineParserOptions parserOptions, object source, LambdaExpression selector, IArgumentResolverFactory resolver) { m_parserOptions = parserOptions ?? throw new ArgumentNullException(nameof(source)); m_source = source ?? throw new ArgumentNullException(nameof(source)); m_selector = selector ?? throw new ArgumentNullException(nameof(selector)); m_resolverFactory = resolver ?? throw new ArgumentNullException(nameof(resolver)); }
public CommandLineCommand(CommandLineParserOptions parserOptions, IArgumentResolverFactory resolverFactory, IContainerResolver containerResolver, TOption option) { m_parserOptions = parserOptions; m_commandOption = new TCommandOption(); m_containerResolver = containerResolver; m_resolverFactory = resolverFactory; m_baseOption = option; if (m_parserOptions.EnableHelpOption) { var tokens = m_parserOptions.HelpOptionName.Split('|'); if (tokens.Length > 1) { m_helpOptionName = $"{m_parserOptions.PrefixShortOption}{tokens[0]}"; m_helpOptionNameLong = $"{m_parserOptions.PrefixLongOption}{tokens[1]}"; } else { m_helpOptionName = $"{m_parserOptions.PrefixLongOption}{tokens[0]}"; m_helpOptionNameLong = null; } } InitialzeModel(); }
/// <summary> /// Creates a new instance of the commandline parser /// </summary> /// <param name="argumentResolverFactory">argument resolver to use</param> /// <param name="containerResolver">container resolver to use</param> /// <param name="parserOptions">The options the parser will use</param> public CommandLineParser(CommandLineParserOptions parserOptions, IArgumentResolverFactory argumentResolverFactory, IContainerResolver containerResolver) { ParserOptions = parserOptions; m_option = new TOption(); m_options = new Dictionary <string, CommandLineOptionBase>(); m_commands = new List <CommandLineCommandBase>(); ArgumentResolverFactory = argumentResolverFactory; ContainerResolver = containerResolver; if (string.IsNullOrWhiteSpace(ParserOptions.AppName)) { ParserOptions.AppName = Process.GetCurrentProcess().ProcessName; } Printer = new UsagePrinter(parserOptions, this, new UsageBuilder(parserOptions)); if (ParserOptions.EnableHelpOption) { var tokens = ParserOptions.HelpOptionName.Split('|'); if (tokens.Length > 1) { m_helpOptionName = $"{ParserOptions.PrefixShortOption}{tokens[0]}"; m_helpOptionNameLong = $"{ParserOptions.PrefixLongOption}{tokens[1]}"; } else { m_helpOptionName = $"{ParserOptions.PrefixLongOption}{tokens[0]}"; m_helpOptionNameLong = null; } } InitialzeModel(); }
/// <summary> /// Creates a new instance of the commandline parser /// </summary> /// <param name="argumentResolverFactory">argument resolver to use</param> public CommandLineParser(IArgumentResolverFactory argumentResolverFactory) : this(new CommandLineParserOptions(), argumentResolverFactory, new DefaultContainerResolver()) { }
/// <summary> /// Creates a new instance of the commandline parser /// </summary> /// <param name="argumentResolverFactory">argument resolver to use</param> /// <param name="containerResolver">container resolver to use</param> public CommandLineParser(CommandLineParserOptions parserOptions, IArgumentResolverFactory argumentResolverFactory, IContainerResolver containerResolver) : base(parserOptions, argumentResolverFactory, containerResolver) { }
/// <summary> /// Creates a new instance of the commandline parser /// </summary> /// <param name="parserOptions">options that the parser will use</param> /// <param name="argumentResolverFactory">argument resolver to use</param> public CommandLineParser(CommandLineParserOptions parserOptions, IArgumentResolverFactory argumentResolverFactory) : base(parserOptions, argumentResolverFactory) { }
/// <summary> /// Creates a new instance of the commandline parser /// </summary> /// <param name="argumentResolverFactory">argument resolver to use</param> public CommandLineParser(IArgumentResolverFactory argumentResolverFactory) : base(argumentResolverFactory) { }
public CommandLineOption(CommandLineParserOptions parserOptions, object source, LambdaExpression selector, IArgumentResolverFactory resolver) : base(parserOptions, source, selector, resolver) { }