fix(rustify_derive): remove derive block expr to fix LSP type inference #29
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This updates
rustify_derive
to remove the block expression that theimpl Endpoint
was wrapped in.This resolves an issue where
rust-analyzer
is unable to infer the type ofEndpoint::Response
in some cases. The issue is described at:Endpoint::Response
#28🔧 Changes
const #const_ident: () = {...};
wrappingimpl Endpoint
in the derive macrouse
imports that were contained in this block expressionRequestMethod
->rustify::enums::RequestMethod
I believe this fix is backwards-compatible, but I invite others to check me on that.
Since
vaultrs
usesrustify
, I checkedvaultrs
onmaster
(aaa7ff6) withrustify_derive
dependency pointed at this branch.cargo build
succeeds andcargo clippy
reports two unusedserde::Serialize
imports:This is likely due to switching to
serde::Serialize
in the macro. I think not requiring thisuse
is an improvement, but if we prefer I can adjust the PR.✅ Testing
rust-analyzer
to infer response types in my editor.Endpoint::Response
#28, as well as in my project using this library.cargo test
cargo check
cargo clippy
cargo run --package rustify --example reqres1
cargo run --package rustify --example reqres2