Пример #1
0
        public virtual void WriteParametersSection(int level, DocumentFormatter output, OutputContext context, IEnumerable <ParameterInfo> parameters)
        {
            if (parameters == null || !parameters.Any())
            {
                return;
            }

            var doc = context.Document.Of(this);

            output.Header(level, "Parameters");
            output.DefinitionList(parameters,
                                  parameter =>
            {
                output.Text(parameter.Name, TextStyles.Teletype);
                output.Text(": ");
                if (parameter.ParameterType.IsGenericParameter)
                {
                    output.Text(parameter.ParameterType.GetDisplayName(), TextStyles.Emphasize);
                }
                else
                {
                    output.LinkCRef(parameter.ParameterType.GetCRef(), parameter.ParameterType.GetDisplayName());
                }
            },
                                  parameter => output.Section(() => doc?.Parameters.For(parameter.Name, output.Xml, name => Log.WarnMisisngParameterDoc(this, name))));
        }
Пример #2
0
        protected virtual void WriteSection(DocumentFormatter output, int level, string header, IEnumerable <ICRef> items)
        {
            if (items == null || !items.Any())
            {
                return;
            }

            if (!string.IsNullOrEmpty(header))
            {
                output.Header(level, header);
            }

            output.List(items, item => output.LinkCRef(item.CRef, (item as ClrItem)?.Title));
        }
Пример #3
0
        protected virtual void WriteSection(DocumentFormatter output, int level, string header, string label, IEnumerable <XmlReferenceNode> items)
        {
            if (items == null || !items.Any())
            {
                return;
            }

            if (!string.IsNullOrEmpty(header))
            {
                output.Header(level, header);
            }

            output.Table(new[] { label, "Description" }, items,
                         item => output.LinkCRef(item.CRef, Utils.FormatCRef(item.CRef)),
                         item => output.Xml(item));
        }
Пример #4
0
        public virtual void WriteReturnValueSection(int level, DocumentFormatter output, OutputContext context, Type returnType)
        {
            if (returnType == null || returnType == typeof(void))
            {
                return;
            }

            var doc = context.Document.Of(this);

            if (doc != null && doc.Returns.Count == 0)
            {
                Log.WarnMisisngReturnDoc(this);
            }

            output.Header(level, "Return Value");
            output.DefinitionList(new[] { returnType },
                                  type => output.LinkCRef(type.GetCRef(), type.GetDisplayName()),
                                  type => output.Xml(doc?.Returns));
        }