int registerNumber = isStatic?0:1; for (MethodParameter parameter: parameters) { String parameterType = parameter.getType(); String parameterName = parameter.getName(); Collection<? extends Annotation> annotations = parameter.getAnnotations(); if ((options.debugInfo && parameterName != null) || annotations.size() != 0) { writer.write(".param p");
int i = 0; for (MethodParameter p : method.getParameters()) { String name = p.getName(); if (name != null) { parameterNames = new String[method.getParameters().size()]; List<? extends MethodParameter> parameters = method.getParameters(); for (MethodParameter p : parameters) { if (p.getAnnotations().size() > 0) { doParam = true; break; = new VisibilityParameterAnnotationTag(parameters.size(), AnnotationConstants.RUNTIME_VISIBLE); for (MethodParameter p : parameters) { List<Tag> tags = handleAnnotation(p.getAnnotations(), null);
public static void writeEmptyMethodTo(IndentingWriter writer, Method method, BaksmaliOptions options) throws IOException { writer.write(".method "); writeAccessFlags(writer, method.getAccessFlags()); writer.write(method.getName()); writer.write("("); ImmutableList<MethodParameter> methodParameters = ImmutableList.copyOf(method.getParameters()); for (MethodParameter parameter: methodParameters) { writer.write(parameter.getType()); } writer.write(")"); writer.write(method.getReturnType()); writer.write('\n'); writer.indent(4); writeParameters(writer, method, methodParameters, options); String containingClass = null; if (options.implicitReferences) { containingClass = method.getDefiningClass(); } AnnotationFormatter.writeTo(writer, method.getAnnotations(), containingClass); writer.deindent(4); writer.write(".end method\n"); }
@Override public Set<? extends Annotation> apply(MethodParameter input) { return input.getAnnotations(); } };
private void internDebug(@Nonnull Method method) { for (MethodParameter param: method.getParameters()) { String paramName = param.getName(); if (paramName != null) { dexPool.stringSection.intern(paramName); } } MethodImplementation methodImpl = method.getImplementation(); if (methodImpl != null) { for (DebugItem debugItem: methodImpl.getDebugItems()) { switch (debugItem.getDebugItemType()) { case DebugItemType.START_LOCAL: StartLocal startLocal = (StartLocal)debugItem; dexPool.stringSection.internNullable(startLocal.getName()); dexPool.typeSection.internNullable(startLocal.getType()); dexPool.stringSection.internNullable(startLocal.getSignature()); break; case DebugItemType.SET_SOURCE_FILE: dexPool.stringSection.internNullable(((SetSourceFile) debugItem).getSourceFile()); break; } } } }
@Override @Nullable public String getSignature() { return methodParameter.getSignature(); } }
writer.write("("); for (MethodParameter parameter: methodParameters) { String type = parameter.getType(); writer.write(type); parameterRegisterCount++;
dexPool.annotationSetSection.intern(parameter.getAnnotations());
@Override @Nullable public String getName() { return methodParameter.getName(); }
@Override @Nullable public String getSignature() { return methodParameter.getSignature(); } }
public static ImmutableMethodParameter of(MethodParameter methodParameter) { if (methodParameter instanceof ImmutableMethodParameter) { return (ImmutableMethodParameter)methodParameter; } return new ImmutableMethodParameter( methodParameter.getType(), methodParameter.getAnnotations(), methodParameter.getName()); }
@Override public String get(int index) { return parameters.get(index).getType(); }
@Override public Set<? extends Annotation> apply(MethodParameter input) { return input.getAnnotations(); } };
@Override @Nullable public String getName() { return methodParameter.getName(); }
@Override @Nullable public String getSignature() { return methodParameter.getSignature(); } }
public static ImmutableMethodParameter of(MethodParameter methodParameter) { if (methodParameter instanceof ImmutableMethodParameter) { return (ImmutableMethodParameter)methodParameter; } return new ImmutableMethodParameter( methodParameter.getType(), methodParameter.getAnnotations(), methodParameter.getName()); }
@Override public String get(int index) { return parameters.get(index).getType(); }
@Override public Set<? extends Annotation> apply(MethodParameter input) { return input.getAnnotations(); } };
@Override @Nullable public String getName() { return methodParameter.getName(); }