package documentation
- Alphabetic
- Public
- Protected
Type Members
- final case class Documentation(summary: String = "", pages: Seq[Page] = _root_.scala.Seq.empty, rules: Seq[DocumentationRule] = _root_.scala.Seq.empty, documentationRootUrl: String = "", overview: String = "", unknownFields: UnknownFieldSet = _root_.scalapb.UnknownFieldSet.empty) extends GeneratedMessage with Updatable[Documentation] with Product with Serializable
Documentation
provides the information for describing a service.Documentation
provides the information for describing a service.Example: <pre><code>documentation: summary: > The Google Calendar API gives access to most calendar features. pages:
- name: Overview content: (== include google/foo/overview.md ==)
- name: Tutorial
content: (== include google/foo/tutorial.md ==)
subpages;
- name: Java content: (== include google/foo/tutorial_java.md ==) rules:
- selector: google.calendar.Calendar.Get description: > ...
- selector: google.calendar.Calendar.Put description: > ... </code></pre> Documentation is provided in markdown syntax. In addition to standard markdown features, definition lists, tables and fenced code blocks are supported. Section headers can be provided and are interpreted relative to the section nesting of the context where a documentation fragment is embedded.
Documentation from the IDL is merged with documentation defined via the config at normalization time, where documentation provided by config rules overrides IDL provided.
A number of constructs specific to the API platform are supported in documentation text.
In order to reference a proto element, the following notation can be used: <pre><code>[fully.qualified.proto.name][]</code></pre> To override the display text used for the link, this can be used: <pre><code>[display text][fully.qualified.proto.name]</code></pre> Text can be excluded from doc using the following notation: <pre><code>(-- internal comment --)</code></pre>
A few directives are available in documentation. Note that directives must appear on a single line to be properly identified. The
include
directive includes a markdown file from an external source: <pre><code>(== include path/to/file ==)</code></pre> Theresource_for
directive marks a message to be the resource of a collection in REST view. If it is not specified, tools attempt to infer the resource from the operations in a collection: <pre><code>(== resource_for v1.shelves.books ==)</code></pre> The directivesuppress_warning
does not directly affect documentation and is documented together with service config validation.- summary
A short summary of what the service does. Can only be provided by plain text.
- pages
The top level pages for the documentation set.
- rules
A list of documentation rules that apply to individual API elements. **NOTE:** All service configuration rules follow "last one wins" order.
- documentationRootUrl
The URL to the root of documentation.
- overview
Declares a single overview page. For example: <pre><code>documentation: summary: ... overview: (== include overview.md ==) </code></pre> This is a shortcut for the following declaration (using pages style): <pre><code>documentation: summary: ... pages:
- name: Overview
content: (== include overview.md ==)
</code></pre>
Note: you cannot specify both
overview
field andpages
field.
- name: Overview
content: (== include overview.md ==)
</code></pre>
Note: you cannot specify both
- Annotations
- @SerialVersionUID()
- final case class DocumentationRule(selector: String = "", description: String = "", deprecationDescription: String = "", unknownFields: UnknownFieldSet = _root_.scalapb.UnknownFieldSet.empty) extends GeneratedMessage with Updatable[DocumentationRule] with Product with Serializable
A documentation rule provides information about individual API elements.
A documentation rule provides information about individual API elements.
- selector
The selector is a comma-separated list of patterns. Each pattern is a qualified name of the element which may end in "*", indicating a wildcard. Wildcards are only allowed at the end and for a whole component of the qualified name, i.e. "foo.*" is ok, but not "foo.b*" or "foo.*.bar". A wildcard will match one or more components. To specify a default for all applicable elements, the whole pattern "*" is used.
- description
Description of the selected API(s).
- deprecationDescription
Deprecation description of the selected element(s). It can be provided if an element is marked as
deprecated
.
- Annotations
- @SerialVersionUID()
- final case class Page(name: String = "", content: String = "", subpages: Seq[Page] = _root_.scala.Seq.empty, unknownFields: UnknownFieldSet = _root_.scalapb.UnknownFieldSet.empty) extends GeneratedMessage with Updatable[Page] with Product with Serializable
Represents a documentation page.
Represents a documentation page. A page can contain subpages to represent nested documentation set structure.
- name
The name of the page. It will be used as an identity of the page to generate URI of the page, text of the link to this page in navigation, etc. The full page name (start from the root page name to this page concatenated with
.
) can be used as reference to the page in your documentation. For example: <pre><code>pages:- name: Tutorial
content: (== include tutorial.md ==)
subpages:
- name: Java
content: (== include tutorial_java.md ==)
</code></pre>
You can reference
Java
page using Markdown reference link syntax:[Java][Tutorial.Java]
.
- name: Java
content: (== include tutorial_java.md ==)
</code></pre>
You can reference
- name: Tutorial
content: (== include tutorial.md ==)
subpages:
- content
The Markdown content of the page. You can use <code>(== include {path}
)</code> to include content from a Markdown file.
- subpages
Subpages of this page. The order of subpages specified here will be honored in the generated docset.
- Annotations
- @SerialVersionUID()
Value Members
- object Documentation extends GeneratedMessageCompanion[Documentation] with JavaProtoSupport[Documentation, api.Documentation] with Serializable
- object DocumentationProto extends GeneratedFileObject
- object DocumentationRule extends GeneratedMessageCompanion[DocumentationRule] with JavaProtoSupport[DocumentationRule, api.DocumentationRule] with Serializable
- object Page extends GeneratedMessageCompanion[Page] with JavaProtoSupport[Page, api.Page] with Serializable