Я ищу как простой способ создать набор идентификаторов. Я просто хочу иметь возможность отслеживать, «видел» ли я конкретный объект при обходе графика.
Я не могу использовать обычный Set, потому что Set использует "==" (метод equals в Scala) для сравнения элементов. То, что я хочу, это набор, который использует «eq».
Есть ли способ создать набор в Scala, который использует какой-то определенный приложением метод для проверки равенства, а не вызывает равенство для элементов набора? Я искал какой-то метод "wrapEquals", который я мог бы переопределить, но не нашел.
Я знаю, что мог бы использовать Java IdentityHashMap, но я ищу что-то более универсальное.
Еще одна идея, которая у меня была, заключалась в том, чтобы просто обернуть каждый элемент набора в другой объект, который реализует equals в терминах eq, но было бы расточительно генерировать тонны новых объектов только для того, чтобы получить новую реализацию equals.
Спасибо!