}
for (ImplemetationMethodDescriptor methodDescriptor
: descriptor.implementationMethodDescriptors()) {
writer.emitAnnotation(Override.class);
writer.beginMethod(methodDescriptor.returnType(), methodDescriptor.name(),
methodDescriptor.publicMethod() ? EnumSet.of(PUBLIC) : EnumSet.noneOf(Modifier.class),
parameterTokens(methodDescriptor.passedParameters()));
FluentIterable<String> creationParameterNames =
FluentIterable.from(methodDescriptor.passedParameters())
.transform(new Function<Parameter, String>() {