我聽說通過代碼中的元組指定記錄是一種不好的做法:我應該始終使用記錄字段(#record_name{record_field = something}
)而不是簡單元組{record_name, value1, value2, something}
。如何匹配ets:匹配Erlang中的記錄?
但是,如何將記錄與ETS表匹配?如果我有記錄的表,我只能配合以下幾點:
ets:match(Table, {$1,$2,$3,something}
很明顯,一旦我添加了一些新的領域,以記錄定義這種模式匹配將停止工作。
相反,我想用這樣的:
ets:match(Table, #record_name{record_field=something})
不幸的是,它返回一個空列表。