static String getArgumentsInformation(String insnDesc) { if (insnDesc == null) { return ""; } Type methodType = Type.getMethodType(insnDesc); int argSize = methodType.getArgumentTypes().length; StringJoiner sj = new StringJoiner(",", "(", ")"); for (int i = 0; i < argSize; i++) { sj.add("_"); } return sj.toString(); }
private String getBehaviorSignCode(final String name, final String desc) { final Type methodType = Type.getMethodType(desc); final Collection<String> parameterClassNameArray = new ArrayList<String>(); if (null != methodType.getArgumentTypes()) { for (final Type parameterType : methodType.getArgumentTypes()) { parameterClassNameArray.add(parameterType.getClassName()); } } final String signCode = String.format( "%s#%s(%s)", targetJavaClassName, name, join(parameterClassNameArray, ",") ); return signCode; }
static String getDescriptionForMethodInsnNode(MethodInsnNode methodInstr) { if (methodInstr.getOpcode() == Opcodes.INVOKESPECIAL && methodInstr.name.equals("<init>")) { return "new " + Util.extractSimpleName(methodInstr.owner, "/") + "()"; } else { Type methodType = Type.getMethodType(methodInstr.desc); int retSize = methodType.getArgumentsAndReturnSizes() & 0x03; if (retSize > 0) { return methodInstr.name + Util.getArgumentsInformation(methodInstr.desc); } } return ""; }
.build(); Type instantiatedMethodAsmType = getMethodType( compiledLambda.getReturnType().getAsmType(), compiledLambda.getParameterTypes().stream()
private GaMethod toMethod(ClassLoader loader, Class<?> clazz, String methodName, String methodDesc) throws ClassNotFoundException, NoSuchMethodException { final org.objectweb.asm.Type asmType = org.objectweb.asm.Type.getMethodType(methodDesc);
return readUTF8(cpInfoOffset, charBuffer); case Symbol.CONSTANT_METHOD_TYPE_TAG: return Type.getMethodType(readUTF8(cpInfoOffset, charBuffer)); case Symbol.CONSTANT_METHOD_HANDLE_TAG: int referenceKind = readByte(cpInfoOffset);
return readUTF8(index, buf); case MTYPE: return Type.getMethodType(readUTF8(index, buf)); default: // case ClassWriter.HANDLE_BASE + [1..9]: int tag = readByte(index);
ele = Type.getMethodType(((Proto) ele).getDesc());
@Override public int arity() { Type methodType = Type.getMethodType(desc); return methodType.getArgumentTypes().length; }
@Override public int arity() { Type methodType = Type.getMethodType(desc); return methodType.getArgumentTypes().length; }
public int arity() { Preconditions.checkState(isInvoke(), "Not an INVOKE opcode"); Type methodType = Type.getMethodType(fieldOrMethod.desc); return methodType.getArgumentTypes().length; }
public int arity() { Preconditions.checkState(isInvoke(), "Not an INVOKE opcode"); Type methodType = Type.getMethodType(fieldOrMethod.desc); return methodType.getArgumentTypes().length; }
public HorseNullFix(String horseClass, ClassVisitor cv, IResultListener listener) { super(Opcodes.ASM5, cv); this.listener = listener; modifiedMethod = new MethodMatcher(horseClass, Type.getMethodType(Type.VOID_TYPE).getDescriptor(), "updateHorseSlots", "func_110232_cE"); }
public static AbstractInsnNode get() { return new MethodInsnNode( INVOKEINTERFACE, selfTpe().getInternalName(), "get", Type.getMethodType( Type.getType(Object.class), Type.INT_TYPE).getDescriptor(), true); }
public static AbstractInsnNode size() { return new MethodInsnNode( INVOKEINTERFACE, selfTpe().getInternalName(), "size", Type.getMethodType( Type.INT_TYPE).getDescriptor(), true); }
private Type snapshotMethodType() { ArrayList<Type> args = new ArrayList<>(); args.add(Type.INT_TYPE); if (context.isVararg()) { args.add(ASMUtils.arrayTypeFor(Object.class)); } for (int i = 0; i < numOfRegisters(); i++) { args.add(Type.getType(Object.class)); } return Type.getMethodType(context.savedStateClassType(), args.toArray(new Type[0])); }
@Override void store(MethodWriter writer, Globals globals) { writer.writeDebugInfo(location); org.objectweb.asm.Type methodType = org.objectweb.asm.Type.getMethodType( org.objectweb.asm.Type.getType(void.class), org.objectweb.asm.Type.getType(Object.class), MethodWriter.getType(actual)); writer.invokeDefCall(value, methodType, DefBootstrap.STORE); }
public static AbstractInsnNode toArray() { return new MethodInsnNode( INVOKEINTERFACE, selfTpe().getInternalName(), "getAsArray", Type.getMethodType( ASMUtils.arrayTypeFor(Object.class)).getDescriptor(), true); }
private static MethodDescriptor newDescriptor(MethodKey key) { Type type = Type.getMethodType(key.desc); List<TypeDescriptor> params = Arrays.stream(type.getArgumentTypes()) .map(Type::getDescriptor) .map(TypeDescriptors::fromRaw) .collect(toList()); return new MethodDescriptorBuilder() .returnType(TypeDescriptors.fromRaw(type.getReturnType().getDescriptor())) .name(key.name) .parameterTypes(ImmutableList.copyOf(params)) .build(); }
public PlayerRendererHookVisitor(String rendererTypeCls, ClassVisitor cv, IResultListener listener) { super(Opcodes.ASM5, cv); this.listener = listener; Type injectedMethodType = Type.getMethodType(Type.VOID_TYPE, MappedType.of(AbstractClientPlayer.class).type(), Type.FLOAT_TYPE, Type.FLOAT_TYPE, Type.FLOAT_TYPE); modifiedMethod = new MethodMatcher(rendererTypeCls, injectedMethodType.getDescriptor(), "applyRotations", "func_77043_a"); }