コード例 #1
0
ファイル: MethodHelp.cs プロジェクト: Richiban/CommandLine
        public override string ToString()
        {
            var builder = new HelpStyleStringBuilder();

            var parameterHeadings = String.Join(" ", ParameterHelp);

            builder.AppendLine($@"{ExecutableName} {RouteHelp} {parameterHeadings}");

            using (builder.Indent())
            {
                if (!String.IsNullOrEmpty(MethodXmlComments))
                {
                    builder.AppendLine(MethodXmlComments);
                    builder.AppendLine();
                }
                else
                {
                    builder.AppendLine();
                }

                var parameterHelpsToUse = ParameterHelp
                                          .Select(h => GetParameterHelp(h))
                                          .Where(h => !String.IsNullOrEmpty(h));

                if (parameterHelpsToUse.Any())
                {
                    builder.AppendLine("Parameters:");
                }

                using (builder.Indent())
                {
                    foreach (var parameterHelp in parameterHelpsToUse)
                    {
                        builder.AppendLine(parameterHelp);
                        builder.AppendLine();
                    }
                }
            }

            return(builder.ToString());
        }
コード例 #2
0
 public HelpStringBuilderIndenter(HelpStyleStringBuilder helpStringBuilder)
 {
     _helpStringBuilder = helpStringBuilder;
     _helpStringBuilder._indentationLevel++;
     _helpStringBuilder.GenerateIndentation();
 }