请看下面的代码片段:
do_stuff() ->
% assume each of BoundVarI is bound here
BoundVar1 = term1(),
BoundVar2 = term2(),
% ...
BoundVarN = termN(),
ok.
do_stuff_wrapper() ->
do_stuff().
在 Package 函数中(do_stuff_wrapper/0
),我如何准确地确定哪一个匹配失败了呢?需要说明的是,我并不是在寻找一种方法来判断它 * 刚刚 * 失败了(可能是通过生成和监视一个进程),而是寻找一种方法来判断 * 哪一个 * 匹配导致了失败。我考虑的一种方法是从错误元组中提取行号,但我觉得这对可维护性伤害很大。
1条答案
按热度按时间0lvr5msh1#
你可以尝试一些沿着的方法:
或者如果你想检查每一个
根据实际的问题,我会选择其中一种(或者两种都不选),但是这些示例显示了您可以调整的不同方法。