2016年12月1日木曜日

Elixirで利用される「@」アットマークの意味

Elixirで利用される「@」アットマークの意味です。

  1. モジュールに注釈を付ける役割(アノテーション)
    • @moduledoc - 現在のモジュールのドキュメント。
    • @doc - 属性に続く関数またはマクロのドキュメント。
    • @behaviour - OTPやユーザー定義の動作を指定するために使用される。
    • @before_compile - モジュールがコンパイルされる前に呼び出されるフック。 これにより、コンパイルの直前にモジュール内に関数を挿入することができる。
  2. 定数
  3. コンパイル時に使用される一時的なモジュールストレージ

2番目の定数の例
defmodule MyServer do
  @my_data 14
  def first_data, do: @my_data
  @my_data 13
  def second_data, do: @my_data
end

MyServer.first_data
MyServer.second_data

3番目の「コンパイル時に使用される一時的なモジュールストレージ」は、意味がよくわかりませんでした。

参考サイト
[Elixir]compile timeに決定されるモジュールの定数(徒然なるままにさん)
Building a web framework from scratch in Elixir(Code Wordsさん)

0 件のコメント:

コメントを投稿