/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ /* 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/. */ #ifndef nsURIHashKey_h__ #define nsURIHashKey_h__
/** * Hashtable key class to use with nsTHashtable/nsBaseHashtable
*/ class nsURIHashKey : public PLDHashEntryHdr { public: typedef nsIURI* KeyType; typedefconst nsIURI* KeyTypePointer;
staticconst nsIURI* KeyToPointer(nsIURI* aKey) { return aKey; } static PLDHashNumber HashKey(const nsIURI* aKey) { if (!aKey) { // If the key is null, return hash for empty string. return mozilla::HashString(""_ns);
}
nsAutoCString spec; // If GetSpec() fails, ignoring the failure and proceeding with an // empty |spec| seems like the best thing to do.
mozilla::Unused << const_cast<nsIURI*>(aKey)->GetSpec(spec); return mozilla::HashString(spec);
}
enum { ALLOW_MEMMOVE = true };
protected:
nsCOMPtr<nsIURI> mKey;
};
#endif// nsURIHashKey_h__
¤ Dauer der Verarbeitung: 0.0 Sekunden
(vorverarbeitet)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung ist noch experimentell.