Определение простых геттеров и сеттеров легко с помощью Asm (и, к счастью, это даже объясняется в их FAQ). Но одна вещь, которая не упоминается и для которой я не смог найти документацию, заключается в том, как реализовать их с использованием информации о типовом типе.
Я действительно могу легко определить информацию о типовом типе (поскольку в коде будут использоваться существующие поля и/или методы, а также полная обработка и разрешение полного типа). Мне просто нужно создать версию generics для типов, которые содержат общий тип.
Надеюсь, это будет так же просто, как изменение сигнатуры вызовов Asm ClassWriter/MethodVisitor, но некоторые комментарии в документации указывают, что это может быть не так просто (поскольку информация о генериках хранится в бит, отличном от обычной информации).
EDIT: выглядит как точка входа "ClassWriter.visitField/Method (...., String signature)). Обратите внимание, что это" описание ", содержащее нормальную информацию об общем классе, но термин" подпись" (в JLS) конкретно относится к генерикам, включая информацию о типе.