Quinn Sinclair
3c1e0afa58
New Lint [impl_hash_with_borrow_str_and_bytes
]
...
Implements a lint to prevent implementation of Hash, Borrow<str> and
Borrow<[u8]> as it breaks Borrow<T> "semantics". According to the book,
types that implement Borrow<A> and Borrow<B> must ensure equality of
borrow results under Eq,Ord and Hash.
> In particular Eq, Ord and Hash must be equivalent for borrowed and
owned values: x.borrow() == y.borrow() should give the same result as x == y.
In the same way, hash(x) == hash(x as Borrow<[u8]>) != hash(x as Borrow<str>).
changelog: newlint [`impl_hash_with_borrow_str_and_bytes`]
2023-11-19 11:33:01 +01:00
..
2023-11-04 21:43:18 +01:00
2023-11-02 17:35:56 +01:00
2023-11-14 13:52:44 +01:00
2023-11-02 17:35:56 +01:00
2023-11-14 22:05:44 +09:00
2023-11-08 19:38:59 +01:00
2023-11-08 19:38:59 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-16 18:07:26 +01:00
2023-11-16 18:07:26 +01:00
2023-11-16 18:07:26 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-11 15:54:58 -05:00
2023-11-11 15:54:58 -05:00
2023-11-11 15:54:58 -05:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-19 11:33:01 +01:00
2023-11-19 11:33:01 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-13 16:52:59 +00:00
2023-11-13 16:52:59 +00:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-09 17:57:06 -05:00
2023-11-09 17:57:06 -05:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-11 13:48:26 +01:00
2023-11-11 13:48:26 +01:00
2023-11-11 13:48:26 +01:00
2023-11-04 14:44:00 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-15 00:33:14 +01:00
2023-11-11 14:50:19 -05:00
2023-11-11 14:50:19 -05:00
2023-11-11 14:50:19 -05:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-14 16:30:52 +08:00
2023-11-14 16:30:52 +08:00
2023-11-14 16:30:52 +08:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-11 21:01:36 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-11 21:01:36 +01:00
2023-11-16 17:30:10 +01:00
2023-11-16 17:30:10 +01:00
2023-11-16 17:30:10 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-09 23:03:44 +00:00
2023-11-09 23:03:44 +00:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00
2023-11-02 17:35:56 +01:00