At least for me many times when i'm writing impls, i feel a lack of ability to write use items, auxiliary functions, and so on, for the ergonomics of writing associated item signatures. I can put them in to the outer scope, but its scope will become unnecessarily large.
Here i suggest adding anonymous associated module item to the language, and put its inner items in scope of resolution of all associated items within the same impl block.
Let's do not generalize this to trait items too, only inherent and trait impl items.
This would be really useful for macros, for example if a macro needs to access a global without anyone else being able to access it. (Right now if I declare a global in a macro, it becomes visible outside the macro. No hygiene)
Still, i want to highlight that the ability to "intermix" non methods within trait impls and keep them in any order i wanted is something that i wish rust had from time to time. Not sure if this is best way to do so, it is absolutely one of the approaches.