当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Elixir Code.fetch_docs用法及代码示例


Elixir语言中 Code.fetch_docs 相关用法介绍如下。

用法:

fetch_docs(module_or_path)
(从 1.7.0 开始)
@spec fetch_docs(module() | String.t()) ::
  {:docs_v1, annotation, beam_language, format, module_doc :: doc_content,
   metadata, docs :: [doc_element]}
  | {:error, :module_not_found | :chunk_not_found | {:invalid_chunk, binary()}}
when annotation: :erl_anno.anno(),
     beam_language: :elixir | :erlang | atom(),
     doc_content: %{optional(binary()) => binary()} | :none | :hidden,
     doc_element:
       {{kind :: atom(), function_name :: atom(), arity()}, annotation,
        signature, doc_content, metadata},
     format: binary(),
     signature: [binary()],
     metadata: map()

返回给定模块的文档或.beam 文件的路径。

当给定一个模块名称时,它会找到它的 BEAM 代码并从中读取文档。

当给定.beam 文件的路径时,它将直接从该文件加载文档。

如果块不可用,它将以EEP 48{:error, reason} 定义的格式返回存储在文档块中的术语。

例子

# Module documentation of an existing module
iex> {:docs_v1, _, :elixir, _, %{"en" => module_doc}, _, _} = Code.fetch_docs(Atom)
iex> module_doc |> String.split("\n") |> Enum.at(0)
"Atoms are constants whose values are their own name."

# A module that doesn't exist
iex> Code.fetch_docs(ModuleNotGood)
{:error, :module_not_found}

相关用法


注:本文由纯净天空筛选整理自elixir-lang.org大神的英文原创作品 Code.fetch_docs(module_or_path)。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。