public static CSharpAttribute CreateCmdletAttribute(CmdletName name, PS.ConfirmImpact impactLevel, string defaultParameterSetName = null)
        {
            if (name == null)
            {
                throw new ArgumentNullException(nameof(name));
            }

            // Cmdlet name
            ICollection <string> arguments = new List <string>()
            {
                $"\"{name.Verb}\"",
                $"\"{name.Noun}\"",
            };

            // Impact level
            if (impactLevel != PS.ConfirmImpact.None)
            {
                arguments.Add($"{nameof(PS.CmdletAttribute.ConfirmImpact)} = {nameof(PS.ConfirmImpact)}.{impactLevel.ToString()}");
            }

            // Default parameter set
            if (defaultParameterSetName != null)
            {
                arguments.Add($"{nameof(PS.CmdletAttribute.DefaultParameterSetName)} = @\"{defaultParameterSetName}\"");
            }

            return(new CSharpAttribute(nameof(PS.CmdletAttribute), arguments: arguments.ToArray()));
        }
 public ObjectFactoryCmdlet(CmdletName cmdletName) : base(cmdletName)
 {
 }