查看源代码 edoc_layout_chunks (edoc v1.3.2)

将 EDoc 模块文档转换为 EEP-48docs_v1 代码块。

此布局仅预期与 edoc_doclet_chunks 一起使用。EDoc 用户指南中的 使用 EDoc API 部分显示了使用此模块的示例。

此模块打破了 edoc_doclet 中声明的约定,即不依赖 doclets 和布局中的 edoc.hrl。它直接使用 #entry{} 记录来恢复布局中无法获取的信息。

另请参阅: edoc_doclet_chunks, //stdlib/shell_docs

概述

类型

根据 EEP 48 的 Docs v1 代码块。

#docs_v1_entry{} 记录等效的元组,但跳过了记录名称字段。

xmerl_xpath:nodeEntity() 的子类型。它对应于 xmerl.hrl 定义的 #xmlElement.content,不包括 #xmlDecl{}

函数

将 EDoc 模块文档转换为 EEP-48 样式的文档代码块。

类型

-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()]}.

根据 EEP 48 的 Docs v1 代码块。

-type docs_v1_entry() ::
          {_KindNameArity :: {atom(), atom(), arity()},
           _Anno :: erl_anno:anno(),
           _Signature :: signature(),
           _Doc :: doc(),
           _Metadata :: metadata()}.

#docs_v1_entry{} 记录等效的元组,但跳过了记录名称字段。

-type metadata() :: map().
-type mime_type() :: binary().
-type signature() :: [binary()].
-type xmerl_attribute() ::
          #xmlAttribute{name :: term(),
                        expanded_name :: term(),
                        nsinfo :: term(),
                        namespace :: term(),
                        parents :: term(),
                        pos :: term(),
                        language :: term(),
                        value :: term(),
                        normalized :: term()}.
-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()}.

xmerl_xpath:nodeEntity() 的子类型。它对应于 xmerl.hrl 定义的 #xmlElement.content,不包括 #xmlDecl{}

-type xpath() :: string().

函数

-spec module(edoc:edoc_module(), proplists:proplist()) -> binary().

将 EDoc 模块文档转换为 EEP-48 样式的文档代码块。

链接到此函数

overview(Element, Options)

查看源代码
-spec overview(Element :: term(), proplists:proplist()) -> term().