Многострочный комментарий в Elixir
Большинство языков допускают блочные комментарии и многострочные команды.
Например, многострочный комментарий в HTML выглядит следующим образом:
<!--
Warning, brave programmer:
Here be dragons.
-->
В "Эликсире" ближе всего я нашел следующее:
http://elixir-lang.org/docs/v1.0/eex/
EEx smartengine <% #comments %>
кажется <% #comments %>
из источника, даже если он многострочный. Тем не менее, это всего лишь обходной путь.
Есть ли в Elixir функция многострочного комментария или способ указать компилятору отбрасывать текст из скомпилированного файла .beam?
Ответы
Ответ 1
Эликсир не имеет многострочных комментариев.
Однако один из наиболее распространенных вариантов использования многострочных комментариев - это документирование модулей и функций, для которых вы можете использовать атрибуты модуля @doc
и @moduledoc
вместе с heredocs.
defmodule MyModule do
@moduledoc """
This module is great at X
"""
@doc """
Frobnicates the given string.
"""
def frobnicate(s) do
end
end
Ответ 2
Макросы могут помочь в некоторой степени:
defmodule Comment do
defmacro comment(_text) do
end
end
defmodule TestComment do
import Comment
comment """
Module
Comment
"""
def func do
comment """
Function
Comment
"""
end
end
Ответ 3
Я пытаюсь просто использовать "", чтобы быстро комментировать код a la Python, не превращая его в документацию
"""
def some_function() do
some_code
end
"""
Ответ 4
Вы можете просто использовать атрибуты модуля для многострочных комментариев, не требуется макрос. Обычно я использую следующее для документирования/комментирования частных функций:
@docp """
This is my
multi line
comment
"""