mirror of
https://github.com/NixOS/nix.git
synced 2025-11-27 20:51:00 +01:00
Remove comparator.hh and switch to <=> in a bunch of places
Known behavior changes: - `MemorySourceAccessor`'s comparison operators no longer forget to compare the `SourceAccessor` base class. Progress on #10832 What remains for that issue is hopefully much easier!
This commit is contained in:
parent
2a95a2d780
commit
bc83b9dc1f
49 changed files with 300 additions and 271 deletions
|
|
@ -169,7 +169,7 @@ public:
|
|||
* a directory is always followed directly by its children. For
|
||||
* instance, 'foo' < 'foo/bar' < 'foo!'.
|
||||
*/
|
||||
bool operator < (const CanonPath & x) const
|
||||
auto operator <=> (const CanonPath & x) const
|
||||
{
|
||||
auto i = path.begin();
|
||||
auto j = x.path.begin();
|
||||
|
|
@ -178,10 +178,9 @@ public:
|
|||
if (c_i == '/') c_i = 0;
|
||||
auto c_j = *j;
|
||||
if (c_j == '/') c_j = 0;
|
||||
if (c_i < c_j) return true;
|
||||
if (c_i > c_j) return false;
|
||||
if (auto cmp = c_i <=> c_j; cmp != 0) return cmp;
|
||||
}
|
||||
return i == path.end() && j != x.path.end();
|
||||
return (i != path.end()) <=> (j != x.path.end());
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue