IDocumentRenderer Interface

Namespace
Kampute.DocToolkit
Assembly
  • Kampute.DocToolkit.dll

Definition

Defines a contract for rendering documentation pages.
public interface IDocumentRenderer
Implemented by

Remarks

The IDocumentRenderer interface serves as a key component in the documentation generation pipeline, providing the contract for transforming code metadata and content into formatted documentation pages. Implementations of this interface are responsible for applying specific formatting, styling, and layout to documentation content.

This interface follows the Visitor pattern, with methods for rendering different types of documentation elements (namespaces, classes, methods, etc.). Each method receives a TextWriter and the specific element to render, allowing the renderer to output the formatted documentation to the destination specified in the output.

Implementers should ensure consistent styling and formatting across all documentation elements to create a cohesive documentation experience.

Methods

RenderClass(TextWriter, ClassModel, bool)Renders the specified class.
RenderConstructor(TextWriter, ConstructorModel)Renders the specified constructor.
RenderConstructorOverloads(TextWriter, OverloadCollection<ConstructorModel>)Renders the specified constructor overloads.
RenderDelegate(TextWriter, DelegateModel)Renders the specified delegate type.
RenderEnum(TextWriter, EnumModel)Renders the specified enum.
RenderEvent(TextWriter, EventModel)Renders the specified event.
RenderField(TextWriter, FieldModel)Renders the specified field.
RenderInterface(TextWriter, InterfaceModel, bool)Renders the specified interface type
RenderMethod(TextWriter, MethodModel)Renders the specified method.
RenderMethodOverloads(TextWriter, OverloadCollection<MethodModel>)Renders the specified method overloads.
RenderNamespace(TextWriter, NamespaceModel, bool)Renders the specified namespace information.
RenderOperator(TextWriter, OperatorModel)Renders the specified operator.
RenderOperatorOverloads(TextWriter, OverloadCollection<OperatorModel>)Renders the specified operator methods.
RenderProperty(TextWriter, PropertyModel)Renders the specified property.
RenderPropertyOverloads(TextWriter, OverloadCollection<PropertyModel>)Renders the specified property overloads.
RenderStruct(TextWriter, StructModel, bool)Renders the specified struct.
RenderTopic(TextWriter, TopicModel)Renders the specified topic.