美文网首页
Elixir-文档模块

Elixir-文档模块

作者: 你期待的花开 | 来源:发表于2018-11-14 17:36 被阅读12次

    Elixir提供了多种方式来编写注释或者是注解。下面是其中三种方式:

    • # - 用于单行的注释
    • @moduledoc- 用于模块文档的注释
    • @doc - 用于函数的注释

    模块注释

    @moduledoc提供模块级别的注释。这个注解一般放在模块定义的最前面,也就是defmodule后。下面的例子简单地展示了@moduledoc这个装饰器的用法。

    defmodule Greeter do
      @moduledoc """
      Provides a function `hello/1` to greet a human
      """
    
      def hello(name) do
        "Hello, " <> name
      end
    end
    
    

    用户可以在IEx里面通过h这个辅助函数看到我们在这个模块里定义的文档。

    iex> c("greeter.ex")
    [Greeter]
    
    iex> h Greeter
    
                    Greeter
    
    Provides a function hello/1 to greet a human
    

    函数注释

    @doc这个装饰器能够提供函数级别的文档注释。@doc装饰器使用的时候只需要放在函数定义前。

    defmodule Greeter do
      @moduledoc """
      ...
      """
    
      @doc """
      Prints a hello message
    
      ## Parameters
    
        - name: String that represents the name of the person.
    
      ## Examples
    
          iex> Greeter.hello("Sean")
          "Hello, Sean"
    
          iex> Greeter.hello("pete")
          "Hello, pete"
    
      """
      @spec hello(String.t()) :: String.t()
      def hello(name) do
        "Hello, " <> name
      end
    end
    

    相关文章

      网友评论

          本文标题:Elixir-文档模块

          本文链接:https://www.haomeiwen.com/subject/zovqmftx.html