Определение простых методов получения и установки легко с помощью Asm (и, к счастью, это даже объясняется в их FAQ). Но одна вещь, которая не упоминается, и для которой я не смог найти документацию, это как реализовать их, используя информацию общего типа.
Я на самом деле могу довольно легко определить информацию об универсальных типах (поскольку код будет принимать существующие поля и / или методы, и существует полная обработка и разрешение универсальных типов). Мне просто нужно сгенерировать универсальную версию для типов, у которых есть универсальный тип.
Я надеюсь, что это так же просто, как и изменение сигнатурных вызовов Asm ClassWriter / MethodVisitor, но некоторые комментарии в документации указывают, что это может быть не так просто (так как общая информация хранится в несколько ином месте, чем обычная информация).
РЕДАКТИРОВАТЬ : выглядит как точка входа "ClassWriter.visitField / Method (...., подпись строки) - обратите внимание, что это" описание ", которое содержит обычную неуниверсальную информацию о классе, но термин «подпись» (в JLS), в частности, относится к обобщенным данным, включая информацию о типе.