MCPcopy Index your code
hub / github.com/clojure/clojure / visitTypeInsn

Method visitTypeInsn

src/jvm/clojure/asm/MethodWriter.java:970–989  ·  view source on GitHub ↗
(final int opcode, final String type)

Source from the content-addressed store, hash-verified

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(

Callers 2

readCodeMethod · 0.45
typeInsnMethod · 0.45

Calls 3

addConstantClassMethod · 0.80
put12Method · 0.80
executeMethod · 0.45

Tested by

no test coverage detected