/// <summary> /// Registers all instances of <see cref="IValueParser"/> in the value parser provider. /// </summary> /// <param name="provider">The value parser provider to register parsers in.</param> /// <param name="container">The service provider to get value parsers from.</param> public static void UseAllValueParsers(this ValueParserProvider provider, ServiceProvider container) { foreach (var parser in container.GetServices <IValueParser>()) { provider.Add(parser); } }
private static ArgumentsParser Parser(ArgumentsParserOptions options = null) { var colCtorProvider = new CollectionConstructorProvider(new CachedTypeActivator(), EmptyServices); var parserProvider = new ValueParserProvider(new CachedTypeActivator(), EmptyServices); var multiValueParser = new MultiValueParser(colCtorProvider, parserProvider); return(new ArgumentsParser(colCtorProvider, multiValueParser, options)); }