- 7,099
- 324
- 1,510
Вопрос не совсем по моддингу, но связан с созданием кормодов, так что вроде не оффтоп.
InsnList - это представление последовательности инструкций байткода, если че.
У него нет метода для создания копии.
Попытался перебирать все ноды текущего листа и копировать в новый, чтобы получить копию.
Но оно че-то не работает, npe кидает
Как правильно копировать этот список?
Заранее спасибо
InsnList - это представление последовательности инструкций байткода, если че.
У него нет метода для создания копии.
Попытался перебирать все ноды текущего листа и копировать в новый, чтобы получить копию.
Но оно че-то не работает, npe кидает
Java:
public static InsnList copy(InsnList insnList) {
InsnList r = new InsnList();
for (int i = 0; i < insnList.size(); i++)
r.add(insnList.get(i)/[I].clone(new HashMap<>())[/I]/);
return r;
}
Как правильно копировать этот список?
Заранее спасибо
- Краш-лог
-
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 1
at org.objectweb.asm.tree.InsnList.toArray(InsnList.java:199)
at org.objectweb.asm.tree.InsnList.get(InsnList.java:110)
Краш-лог:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 1
at org.objectweb.asm.tree.InsnList.toArray(InsnList.java:199)
at org.objectweb.asm.tree.InsnList.get(InsnList.java:110)