Tôi đã nghe nói rằng việc chỉ định các bản ghi thông qua bộ dữ liệu trong mã là một thực hành không tốt: Tôi phải luôn sử dụng các trường bản ghi (#record_name{record_field = something}
) thay vì các bộ dữ liệu đơn thuần {record_name, value1, value2, something}
.Làm thế nào để đối sánh với ets: khớp với một bản ghi trong Erlang?
Nhưng làm cách nào để khớp với bản ghi đối với bảng ETS? Nếu tôi có một bảng có hồ sơ, tôi chỉ có thể khớp với những điều sau đây:
ets:match(Table, {$1,$2,$3,something}
Rõ ràng là khi tôi thêm một số trường mới vào định nghĩa bản ghi, mẫu này sẽ ngừng hoạt động.
Thay vào đó, tôi muốn sử dụng một cái gì đó như thế này:
ets:match(Table, #record_name{record_field=something})
Thật không may, nó sẽ trả về một danh sách trống.