public OptionDefinition( string feature, OptionGroup group, string name, object?defaultValue, Type type, bool isPerLanguage ) { if (string.IsNullOrWhiteSpace(feature)) { throw new ArgumentNullException(nameof(feature)); } if (string.IsNullOrWhiteSpace(name)) { throw new ArgumentException(nameof(name)); } this.Feature = feature; this.Group = group ?? throw new ArgumentNullException(nameof(group)); this.Name = name; this.DefaultValue = defaultValue; this.Type = type ?? throw new ArgumentNullException(nameof(type)); this.IsPerLanguage = isPerLanguage; }
internal PerLanguageOption2( string feature, OptionGroup group, string name, T defaultValue, ImmutableArray <OptionStorageLocation2> storageLocations ) { if (string.IsNullOrWhiteSpace(feature)) { throw new ArgumentNullException(nameof(feature)); } if (string.IsNullOrWhiteSpace(name)) { throw new ArgumentException(nameof(name)); } OptionDefinition = new OptionDefinition( feature, group, name, defaultValue, typeof(T), isPerLanguage: true ); this.StorageLocations = storageLocations; }
internal PerLanguageOption2( string feature, OptionGroup group, string name, T defaultValue, params OptionStorageLocation2[] storageLocations ) : this(feature, group, name, defaultValue, storageLocations.ToImmutableArray()) { }
public Option2(string feature, OptionGroup group, string name, T defaultValue, ImmutableArray <OptionStorageLocation2> storageLocations, string?languageName) { if (string.IsNullOrWhiteSpace(feature)) { throw new ArgumentNullException(nameof(feature)); } if (string.IsNullOrWhiteSpace(name)) { throw new ArgumentException(nameof(name)); } OptionDefinition = new OptionDefinition(feature, group, name, defaultValue, typeof(T)); this.StorageLocations = storageLocations; LanguageName = languageName; }
internal PerLanguageOption(string feature, OptionGroup group, string name, T defaultValue, params OptionStorageLocation[] storageLocations) { if (string.IsNullOrWhiteSpace(feature)) { throw new ArgumentNullException(nameof(feature)); } if (string.IsNullOrWhiteSpace(name)) { throw new ArgumentException(nameof(name)); } this.Feature = feature; this.Group = group ?? throw new ArgumentNullException(nameof(group)); this.Name = name; this.DefaultValue = defaultValue; this.StorageLocations = storageLocations.ToImmutableArray(); }
internal Option( string feature, OptionGroup group, string name, T defaultValue, ImmutableArray <OptionStorageLocation> storageLocations ) : this( new OptionDefinition( feature, group, name, defaultValue, typeof(T), isPerLanguage : false ), storageLocations ) { }
public Option2(string feature, OptionGroup group, string name, T defaultValue, ImmutableArray <OptionStorageLocation2> storageLocations) : this(feature, group, name, defaultValue, storageLocations, null) { }
public Option2(string feature, OptionGroup group, string name, T defaultValue, OptionStorageLocation2 storageLocation) : this(feature, group, name, defaultValue, ImmutableArray.Create(storageLocation)) { }
internal PerLanguageOption2( string feature, OptionGroup group, string name, T defaultValue, OptionStorageLocation2 storageLocation1, OptionStorageLocation2 storageLocation2) : this(feature, group, name, defaultValue, ImmutableArray.Create(storageLocation1, storageLocation2)) { }
internal PerLanguageOption2(string feature, OptionGroup group, string name, T defaultValue) : this(feature, group, name, defaultValue, ImmutableArray <OptionStorageLocation2> .Empty) { }