codegen output triggers clippy "from_over_into"
jayvdb opened this issue · comments
John Vandenberg commented
The codegen output triggers https://github.com/rust-lang/rust-clippy/blob/master/clippy_lints/src/from_over_into.rs
warning: an implementation of `From` is preferred since it gives you `Into<_>` for free where the reverse isn't true
--> my_crate/my_model.rs:35:1
|
35 | impl Into<MyModel> for MyModelBuilder<crate::generics::FooBarExists, crate::generics::FooBazExists, ..
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= help: consider to implement `From<my_model::MyModelBuilder<generics::FooBarExists, generics::FooBazExists, ...>>` instead
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#from_over_into
Note clippy --fix
doesnt automatically fix this one.
A quick fix is adding an allow.
diff --git a/src/v2/codegen/impls.rs b/src/v2/codegen/impls.rs
index 6c29fff8..10dd8d38 100644
--- a/src/v2/codegen/impls.rs
+++ b/src/v2/codegen/impls.rs
@@ -315,6 +315,8 @@ impl<'a> ApiObjectImpl<'a> {
}
let needs_container = builder.needs_container();
+
+ f.write_str("\n#[allow(clippy::from_over_into)]")?;
f.write_str("\nimpl")?;
if builder.needs_any {
ApiObject::write_any_generic(f)?;