It looks like this page:
http://dlang.org/hash-map.html
Should have the override keyword added the the member functions
in Foo:
class Foo
{
int a, b;
size_t toHash() { return a + b; }
bool opEquals(Object o)
{
Foo foo = cast(Foo) o;
return foo && a == foo.a && b == foo.b;
}
}