Какие значения могут получить параметры отладки visitSource в ASM ClassVisitor?

Метод visitCode в asm's ClassVisitor принимает параметр отладки, типизированный как String

public final void visitSource(final String file, final String debug)

Согласно JavaDoc

debug - дополнительная отладочная информация для вычисления соответствия между исходным и скомпилированным элементами класса. Может быть нулевым

Я не верю, что когда-либо видел это заполненным значением кроме нуля.

При каких обстоятельствах это значение будет заселено?

Как выглядят содержащиеся в нем данные?

1 ответ

Решение

debug значение входит в SourceDebugExtension атрибут файла класса. Вы можете найти полное описание его содержимого в JSR-045.

Обычно он используется для поддержки отладки исходного кода не-Java, скомпилированного в классы Java, например - JSP. Если я не ошибаюсь, JRuby также заполняет его при генерации классов Java.

Другие вопросы по тегам