-
Notifications
You must be signed in to change notification settings - Fork 0
Description
A synthetic object bearing the name of its case class, is defined by the compiler for every case class. This may be confusing for the user, especially when an object bearing the same name is explicitly defined in the code (in such case, there would be two objects with the same name as the case class).
The two objects may be connected by a method named readResolve which if I recall correctly, is some kind of Java internal-ish method.
It seems this all should be intelligently collapsed into fewer parts, entertaining a facade hiding these internals from the user, without the loss of real information such as usage links (e.g. in case any of the collapsed objects are used from elsewhere, this hopefully can be represented by collapsing the connections into the simpler facade, in a manner that maintains "correctness").