Exemple #1
0
        public static string ToLeadingComments(this DescriptorDeclaration d, string prefix = "")
        {
            if (d == null)
            {
                return("");
            }
            StringBuilder sb  = new StringBuilder();
            string        sep = "\r\n";

            string[] lines = null;
            foreach (var tt in d.LeadingDetachedComments)
            {
                lines = tt.Split(new string[] { "\r\n" }, StringSplitOptions.None);
                foreach (var t in lines)
                {
                    sb.Append(prefix);
                    sb.Append("/// ");
                    sb.Append(t);
                }
                sb.Append(sep);
            }
            lines = d.LeadingComments.Split(new string[] { "\r\n" }, StringSplitOptions.None);
            foreach (var t in lines)
            {
                sb.Append(prefix);
                sb.Append("/// ");
                sb.Append(t);
            }
            return(sb.ToString());
        }
Exemple #2
0
        public static string ToTrailingComments(this DescriptorDeclaration d, string prefix = "")
        {
            if (d == null)
            {
                return("");
            }
            StringBuilder sb    = new StringBuilder();
            var           lines = d.TrailingComments.Split(new string[] { "\r\n" }, StringSplitOptions.None);

            foreach (var t in lines)
            {
                sb.Append(prefix);
                sb.Append("/// ");
                sb.Append(t);
            }
            return(sb.ToString());
        }
Exemple #3
0
 public static IEnumerable <string> DocLines(this DescriptorDeclaration decl) =>
 decl?.LeadingComments.Split('\n').Select(x => x.Trim())
 .SkipWhile(string.IsNullOrWhiteSpace).Reverse().SkipWhile(string.IsNullOrWhiteSpace).Reverse() ??
 Enumerable.Empty <string>();