【发布时间】:2015-05-15 05:07:18
【问题描述】:
我有一个函数,它维护一些值作为其递归的状态,为了灵活地处理其参数的顺序,我使用Map 来存储状态并在调用之间传递它。
我的基本情况是函数在没有socket 的情况下被调用,因此应该存在只完成该设置的情况。但是,我找不到匹配 Map 的不存在键的方法。
尝试:
def measure(args = %{socket: nil}) ...
def measure(args = %{socket: socket}) when not is_port(socket) ...
但是,这些模式仅在存在键 socket(即 nil/不是端口)时匹配。
有没有办法指定匹配不存在的键的模式?还是我必须创建另一个 entry 函数来为我的地图提供默认值?
【问题讨论】: