Basically, you're wrapping your impl in a dummy const, so your impl lives in its own lexical scope.
You can set attributes on that scope, define consts/statics, import stuff that will not interfere with anything outside the generated code...etc.
So, just add your use lines. You can allow unused imports on the scope too, no conditional imports needed to avoid warnings. You don't have to worry about anything 😉
See this serde-derive code.
Basically, you're wrapping your impl in a dummy const, so your impl lives in its own lexical scope.
You can set attributes on that scope, define consts/statics, import stuff that will not interfere with anything outside the generated code...etc.
So, just add your
use
lines. You can allow unused imports on the scope too, no conditional imports needed to avoid warnings. You don't have to worry about anything 😉Oh wow I'm getting flashbacks to IIFE in js! Makes sense