Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
rust: alloc: remove the
borrow
module (ToOwned
, Cow
)
The `Cow` type [1] requires that its generic parameter type implements the `ToOwned` trait [2], which provides a method to create owned data from borrowed data, usually by cloning. However, it is infallible, and thus in most cases it is not useful for the kernel. [3] Therefore, introduce `cfg(no_borrow)` to remove the `borrow` module (which contains `ToOwned` and `Cow`) from `alloc`. Link: https://doc.rust-lang.org/alloc/borrow/enum.Cow.html [1] Link: https://doc.rust-lang.org/alloc/borrow/trait.ToOwned.html [2] Link: https://lore.kernel.org/rust-for-linux/20221204103153.117675b1@GaryWorkstation/ [3] Cc: Gary Guo <[email protected]> Cc: Wedson Almeida Filho <[email protected]> Cc: Josh Triplett <[email protected]> Signed-off-by: Miguel Ojeda <[email protected]> Reviewed-by: Wei Liu <[email protected]> Reviewed-by: Finn Behrens <[email protected]>
- Loading branch information