(final int opcode, final String type)
| 968 | } |
| 969 | |
| 970 | @Override |
| 971 | public void visitTypeInsn(final int opcode, final String type) { |
| 972 | lastBytecodeOffset = code.length; |
| 973 | // Add the instruction to the bytecode of the method. |
| 974 | Symbol typeSymbol = symbolTable.addConstantClass(type); |
| 975 | code.put12(opcode, typeSymbol.index); |
| 976 | // If needed, update the maximum stack size and number of locals, and stack map frames. |
| 977 | if (currentBasicBlock != null) { |
| 978 | if (compute == COMPUTE_ALL_FRAMES || compute == COMPUTE_INSERTED_FRAMES) { |
| 979 | currentBasicBlock.frame.execute(opcode, lastBytecodeOffset, typeSymbol, symbolTable); |
| 980 | } else if (opcode == Opcodes.NEW) { |
| 981 | // The stack size delta is 1 for NEW, and 0 for ANEWARRAY, CHECKCAST, or INSTANCEOF. |
| 982 | int size = relativeStackSize + 1; |
| 983 | if (size > maxRelativeStackSize) { |
| 984 | maxRelativeStackSize = size; |
| 985 | } |
| 986 | relativeStackSize = size; |
| 987 | } |
| 988 | } |
| 989 | } |
| 990 | |
| 991 | @Override |
| 992 | public void visitFieldInsn( |
no test coverage detected