當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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)。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。