@Override public Stream<IJavaType> parameters() { return method.parameters().stream().map(Wrappers::wrap); }
public static String getBindingKey(MethodInfo method) { StringBuilder sb = new StringBuilder(); sb.append(getBindingKey(method.declaringClass())); sb.append('.'); sb.append(method.name()); sb.append('('); for (Type parameter : method.parameters()) { sb.append(getGeneralTypeBindingKey(parameter)); } sb.append(')'); sb.append(getGeneralTypeBindingKey(method.returnType())); return sb.toString(); }
/** * @param i * @return * @throws SerianalyzerException */ static String makeSignature ( MethodInfo i, boolean fix ) throws SerianalyzerException { StringBuilder sb = new StringBuilder(); sb.append('('); ClassInfo declaringImpl = i.declaringClass(); if ( fix && "<init>".equals(i.name()) && declaringImpl.nestingType() == NestingType.INNER ) { //$NON-NLS-1$ // there seems to be some sort of bug, missing the the outer instance parameter in the constructor if ( !Modifier.isStatic(declaringImpl.flags()) ) { org.jboss.jandex.Type enclosingClass = org.jboss.jandex.Type.create(declaringImpl.enclosingClass(), Kind.CLASS); org.jboss.jandex.Type firstArg = i.parameters().size() > 0 ? i.parameters().get(0) : null; if ( firstArg instanceof TypeVariable ) { firstArg = firstArg.asTypeVariable().bounds().get(0); } if ( firstArg == null || !firstArg.equals(enclosingClass) ) { sb.append(toString(enclosingClass)); } } } for ( org.jboss.jandex.Type p : i.parameters() ) { sb.append(toString(p)); } sb.append(')'); sb.append(toString(i.returnType())); return sb.toString(); }
if ( methodInfo.parameters().size() > 0 ) { continue;
if (!each.parameters().isEmpty()) { throw new RuntimeException("Method marked @Default must require zero parameters");