diff -r 000000000000 -r 6474c204b198 xpcom/ds/nsIHashable.idl --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/xpcom/ds/nsIHashable.idl Wed Dec 31 06:09:35 2014 +0100 @@ -0,0 +1,24 @@ +/* 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; +};