/* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ #include "nsISupports.idl" /** * Represents an object that can be stored in a hashtable. */ [scriptable, uuid(17e595fa-b57a-4933-bd0f-b1812e8ab188)] interface nsIHashable : nsISupports { /** * Is this object the equivalent of the other object? */ boolean equals(in nsIHashable aOther); /** * A generated hashcode for this object. Objects that are equivalent * must have the same hash code. Getting this property should never * throw an exception! */ readonly attribute unsigned long hashCode; };