Loading files
7f9864208This file is pinned to the selected release. Download the original to open it in your design tool.
using System;
using System.Linq;
namespace Hast.Samples.Consumer.Attributes;
/// <summary>
/// Represents a case-insensitive command line argument and any number of aliases for the given property.
/// </summary>
[AttributeUsage(AttributeTargets.Property)]
public sealed class ArgumentAttribute : Attribute
{
public string[] Aliases { get; }
public ArgumentAttribute(params string[] aliases) =>
Aliases = [.. aliases.Select(argument => argument.Trim().ToUpperInvariant())];
}