View Source edoc_layout_chunks (edoc v1.3)
Convert EDoc module documentation to an EEP-48docs_v1
chunk.
This layout is only expected to work with edoc_doclet_chunks
. Section Using the EDoc API in the EDoc User's Guide shows an example of using this module.
This module breaks the convention stated in edoc_doclet
to not rely on edoc.hrl
in doclets and layouts. It uses #entry{}
records directly to recover information that is not otherwise available to layouts.
See also: edoc_doclet_chunks, //stdlib/shell_docs.
Summary
Types
The Docs v1 chunk according to EEP 48.
A tuple equivalent to the #docs_v1_entry{}
record, but with the record name field skipped.
Subtype of xmerl_xpath:docNodes()
. It corresponds to #xmlElement.content
as defined by xmerl.hrl
, sans the #xmlDecl{}
.
Functions
Convert EDoc module documentation to an EEP-48 style doc chunk.
Types
-type beam_language() :: atom().
-type doc() :: #{doc_language() => doc_string()} | none | hidden.
-type doc_language() :: binary().
-type doc_string() :: binary().
-type docs_v1() :: #docs_v1{anno :: erl_anno:anno(), beam_language :: beam_language(), format :: mime_type(), module_doc :: doc(), metadata :: metadata(), docs :: [docs_v1_entry()]}.
The Docs v1 chunk according to EEP 48.
-type docs_v1_entry() :: {_KindNameArity :: {atom(), atom(), arity()}, _Anno :: erl_anno:anno(), _Signature :: signature(), _Doc :: doc(), _Metadata :: metadata()}.
A tuple equivalent to the #docs_v1_entry{}
record, but with the record name field skipped.
-type metadata() :: map().
-type mime_type() :: binary().
-type signature() :: [binary()].
-type xmerl_doc_node() :: #xmlComment{parents :: term(), pos :: term(), language :: term(), value :: term()} | #xmlElement{name :: term(), expanded_name :: term(), nsinfo :: term(), namespace :: term(), parents :: term(), pos :: term(), attributes :: term(), content :: term(), language :: term(), xmlbase :: term(), elementdef :: term()} | #xmlPI{name :: term(), parents :: term(), pos :: term(), value :: term()} | #xmlText{parents :: term(), pos :: term(), language :: term(), value :: term(), type :: term()}.
Subtype of xmerl_xpath:docNodes()
. It corresponds to #xmlElement.content
as defined by xmerl.hrl
, sans the #xmlDecl{}
.
-type xpath() :: string().
Functions
-spec module(edoc:edoc_module(), proplists:proplist()) -> binary().
Convert EDoc module documentation to an EEP-48 style doc chunk.
-spec overview(Element :: term(), proplists:proplist()) -> term().