1
0
mirror of https://github.com/d47081/qBittorrent.git synced 2025-01-11 07:18:08 +00:00

Add operator< for InfoHash class

This commit is contained in:
Chocobo1 2020-12-10 15:58:54 +08:00
parent cba8d83b21
commit 5ba6a5fca1
No known key found for this signature in database
GPG Key ID: 210D9C873253A68C
3 changed files with 8 additions and 2 deletions

View File

@ -84,6 +84,11 @@ bool BitTorrent::operator!=(const InfoHash &left, const InfoHash &right)
return !(left == right); return !(left == right);
} }
bool BitTorrent::operator<(const InfoHash &left, const InfoHash &right)
{
return static_cast<lt::sha1_hash>(left) < static_cast<lt::sha1_hash>(right);
}
uint BitTorrent::qHash(const InfoHash &key, const uint seed) uint BitTorrent::qHash(const InfoHash &key, const uint seed)
{ {
return ::qHash((std::hash<lt::sha1_hash> {})(key), seed); return ::qHash((std::hash<lt::sha1_hash> {})(key), seed);

View File

@ -61,6 +61,7 @@ namespace BitTorrent
bool operator==(const InfoHash &left, const InfoHash &right); bool operator==(const InfoHash &left, const InfoHash &right);
bool operator!=(const InfoHash &left, const InfoHash &right); bool operator!=(const InfoHash &left, const InfoHash &right);
bool operator<(const InfoHash &left, const InfoHash &right);
uint qHash(const InfoHash &key, uint seed); uint qHash(const InfoHash &key, uint seed);
} }

View File

@ -102,8 +102,8 @@ bool TransferListSortModel::lessThan_impl(const QModelIndex &left, const QModelI
const auto hashLessThan = [this, &left, &right]() -> bool const auto hashLessThan = [this, &left, &right]() -> bool
{ {
const TransferListModel *model = qobject_cast<TransferListModel *>(sourceModel()); const TransferListModel *model = qobject_cast<TransferListModel *>(sourceModel());
const QString hashL = model->torrentHandle(left)->hash(); const BitTorrent::InfoHash hashL = model->torrentHandle(left)->hash();
const QString hashR = model->torrentHandle(right)->hash(); const BitTorrent::InfoHash hashR = model->torrentHandle(right)->hash();
return hashL < hashR; return hashL < hashR;
}; };