检查Elixir的保护条款中的列表是否列出

hum*_*ger 1 elixir

检查参数是保护子句中的列表列表还是键值对列表的最佳方法是什么?

我提出的解决方案只是抓住头部并进行检查,但我觉得必须有更好的方法.

def stuff(items) when is_list(hd(items)) do
    something
end
Run Code Online (Sandbox Code Playgroud)

Dog*_*ert 5

但我觉得必须有更好的方法

就在这里.使用这样的模式匹配:

def stuff([head | _]) when is_list(head) do
  something
end
Run Code Online (Sandbox Code Playgroud)