public class LineNumbers$
This is a minimized byte-code parser that concentrates exclusively on line
numbers and source file extraction. It works for all normal classes up to
format 52:0 (JDK8), and it also works for Lambdas that are Serializable. The
latter restriction is due to the fact that the proxy object generated by
LambdaMetafactory otherwise contains no information about which method backs
this particular lambda (and there might be multiple defined within a single
Scala API: Obtain line number information for the class defining the given object.
This is done by reading the byte code (a potentially blocking IO operation)
and interpreting the debug information that it may contain.
This does not work for Java 8 lambdas that are not Serializable, because
the language designers have consciously made it impossible to obtain the
byte code for those.
obj - (undocumented)
public java.lang.String prettyName(java.lang.Object obj)
Extract source information if available and format a string to identify the
class definition in question. This will include the package name and either
source file information or the class name.