目录比较在 Dart 中不起作用?

Directory comparison not working in Dart?

为什么目录比较在 Dart 中无法按预期方式工作?

import 'dart:io';

void main() {
  Directory d = Directory('/kek');
  Directory e = Directory('/kek');
  print(d==e);  // false
  print(d.hashCode);  // 123456
  print(e.hashCode);  // 654321
}

当我阅读 Directory 对象的文档时,hashCodeoperator== 方法只是从 Object 继承而来,因此没有特殊的实现会导致两个不同的 Directory 对象比较相等如果他们指向同一个地方。

这将很难实施。 hashCode 是否应该规范化相对路径和包含“.”的路径?和 ”..”?它应该遵循符号链接吗?具有多个硬链接的文件呢?