/// <summary> /// Adds a "/features:" switch to the command line for each provided feature. /// </summary> internal static void AddFeatures(CommandLineBuilderExtension commandLine, string?features) { if (RoslynString.IsNullOrEmpty(features)) { return; } foreach (var feature in CompilerOptionParseUtilities.ParseFeatureFromMSBuild(features)) { commandLine.AppendSwitchIfNotNull("/features:", feature.Trim()); } }
protected void ReadFeatures() { var features = Project.ReadPropertyString(PropertyNames.Features); if (!string.IsNullOrWhiteSpace(features)) { foreach (var feature in CompilerOptionParseUtilities.ParseFeatureFromMSBuild(features)) { Add("features", feature); } } }
/// <summary> /// Adds a "/features:" switch to the command line for each provided feature. /// </summary> /// <param name="commandLine"></param> private void AddFeatures(CommandLineBuilderExtension commandLine) { var features = Features; if (string.IsNullOrEmpty(features)) { return; } foreach (var feature in CompilerOptionParseUtilities.ParseFeatureFromMSBuild(features)) { commandLine.AppendSwitchIfNotNull("/features:", feature.Trim()); } }
internal static ImmutableDictionary <string, string> ParseFeatures(List <string> features) { ImmutableDictionary <string, string> .Builder builder = ImmutableDictionary.CreateBuilder <string, string>(); CompilerOptionParseUtilities.ParseFeatures(builder, features); return(builder.ToImmutable()); }