Elixir - 具有自定义equals / hash函数的ETS

时间:2017-10-01 01:57:46

标签: set elixir ets

在Java中,可以通过覆盖/实现类的方法来自定义equals / hash函数。

当您想要自定义班级的唯一性时,这非常有用 - 这样您就可以检查'重复'在一套容易。

你如何在Elixir中做同样的事情,尤其是ETS?

1 个答案:

答案 0 :(得分:0)

我需要做的一件事就是创建一个唯一的哈希函数(可以返回任何类型)。每个唯一输入应该只有一个唯一的哈希函数输出。

然后你可以存储{hash,val}元组:

table = :ets.create(:table, [])
:ets.insert(table, {hash(val), val})
:ets.lookup(table, hash(val))