我有要求
add_items(AuctionId, [{Item, Desc, Bid}]) -> {ok, [{ItemId, Item]} | {error, unknown_auction}.
如何使用元组列表编写函数体?
我尝试过:
add_items(AuctionId, ItemList) -> ...
这样做很好,但是我还没有匹配需求--但是如果我这样定义它,需求会返回function_clause错误,因为它不能进行模式匹配(而且我认为问题也不希望我这样定义规范,因为我会写这样的内容
-spec add_items(reference(), [item_info()]) ->
{ok, [{itemid(), nonempty_string()}]} | {error, unknown_auction()}.
这也不符合用ala []和[H]的头和尾进行递归定义的情况|T]
1条答案
按热度按时间l7mqbcuq1#
以下是您可以执行的操作示例:
在 shell 中:
shell交互表明
add_items()
满足您的要求:1.它有两个参数,第二个参数是一个列表,其元素是三个元素元组。
1.返回值是包含两个元素元组的列表的
ok
元组;或者元组{error,unknown_auction}
。