manywaypark's Blog
개발, 검색, 함수

@impl true

함수형 언어/Elixir 2018.07.12 12:42 by manywaypark

현재 내가 사용하는 elixir version은 1.6.5이다.

1.5.0의 changelog에 나오는 내용이므로 1.5.0 이상의 버전에서는 다 적용될 것으로 예상됨.


callback의 구현임을 명시적으로 알려줄 때 "@impl true"를 함수의 앞에 써준다.


sample:


defmodule MyApp do

  @behaviour Plug


  @impl true

  # 이 함수 `init/1`은 문서화에서 제외된다. 암묵적으로 @doc false로 설정된다.

  def init(_opts) do

    opts

  end


  @impl true

  @doc """

  여기 내용은 그대로 문서화에 적용됨

  see `Plug.call/2`

  """

  def call(conn, _opts) do

    Plug.Conn.send_resp(conn, 200, "hello world")

  end

end



- callback이 아닌 함수에 @impl 사용하면 에러.

- 어느 하나의 함수에 @impl을 적용했다면 그 모듈 내의 모든 callback에서 @impl을 써주지 않은 함수에 대해 경고.


ref: https://elixir-lang.org/blog/2017/07/25/elixir-v1-5-0-released/


happy hackin'


1 ··· 5 6 7 8 9 10 11 12 13 ··· 295 
분류 전체보기 (295)
잡담 (20)
함수형 언어 (62)
emacs (16)
java (18)
tips & tricks (147)
사랑 (1)
가사 (0)
독서 (4)
mobile (6)
비함수형 언어 (2)