有什么方法可以注释掉 Elixir 中函数中的代码行
Is there any way to comment out line(s) of code in function in Elixir
有什么方法可以注释掉函数中的一行或多行代码吗?
类似下面的内容
defmodule MyModule
def foo do
//a = "old code"
a = "new code"
end
end
或
defmodule MyModule
def foo do
/*a = "old code"
b = 1234 */
a = "new code"
end
end
Elixir 中的注释,在可用作脚本语言的语言中很常见,使用井号。
defmodule MyModule
def foo do
# a = "old code"
a = "new code"
end
end
形式上,没有办法进行多行注释,但多行字符串最终会成为空话。
defmodule MyModule
def foo do
"""
a = "old code"
a = "more old code"
"""
a = "new code"
end
end
我远不是专家,但我不认为这个答案适用于所有情况。如果多行字符串位于函数的末尾,它将作为函数的结果返回。所以我认为以下对答案代码的重新排序失败了(或者至少没有按预期运行)。它returns"a = \"old code\"\na = \"more old code\"\n"
。另请注意,defmodule
行的答案中缺少 do
。最后,对多个注释使用 """
的代码将生成 unused literal
错误(而 '''
不会)。
defmodule MyModule do
def foo do
a = "new code"
"""
a = "old code"
a = "more old code"
"""
end
end
那么,如果多行注释技术不起作用(在所有情况下),我们应该如何屏蔽一段代码?
您不能设置属性(例如 @comment """...
在函数内),这样将不起作用。
您可以像 那样使用宏,但是 "pollutes" 代码有点。
我在 Google 上搜索了一下,找不到合适的答案(也许我遗漏了一些明显的东西)所以我会破解一些 elisp
代码来屏蔽 Emacs 中的一个部分在每一行前面加上 #
(如果它还没有在 Elixir 模式包中)。
有什么方法可以注释掉函数中的一行或多行代码吗?
类似下面的内容
defmodule MyModule
def foo do
//a = "old code"
a = "new code"
end
end
或
defmodule MyModule
def foo do
/*a = "old code"
b = 1234 */
a = "new code"
end
end
Elixir 中的注释,在可用作脚本语言的语言中很常见,使用井号。
defmodule MyModule
def foo do
# a = "old code"
a = "new code"
end
end
形式上,没有办法进行多行注释,但多行字符串最终会成为空话。
defmodule MyModule
def foo do
"""
a = "old code"
a = "more old code"
"""
a = "new code"
end
end
我远不是专家,但我不认为这个答案适用于所有情况。如果多行字符串位于函数的末尾,它将作为函数的结果返回。所以我认为以下对答案代码的重新排序失败了(或者至少没有按预期运行)。它returns"a = \"old code\"\na = \"more old code\"\n"
。另请注意,defmodule
行的答案中缺少 do
。最后,对多个注释使用 """
的代码将生成 unused literal
错误(而 '''
不会)。
defmodule MyModule do
def foo do
a = "new code"
"""
a = "old code"
a = "more old code"
"""
end
end
那么,如果多行注释技术不起作用(在所有情况下),我们应该如何屏蔽一段代码?
您不能设置属性(例如 @comment """...
在函数内),这样将不起作用。
您可以像
我在 Google 上搜索了一下,找不到合适的答案(也许我遗漏了一些明显的东西)所以我会破解一些 elisp
代码来屏蔽 Emacs 中的一个部分在每一行前面加上 #
(如果它还没有在 Elixir 模式包中)。