static MethodSignature asMemberOf(Types typeUtils, TypeElement in, ExecutableElement method) {
    return asMemberOf(typeUtils, asDeclared(in.asType()), method);
  }
Represents the signature of a method: the types of its parameters and of its return value. The
types in question are represented using {@link AnnotatedTypeMirror}, which is a {@link
TypeMirror} and associated type annotations.
value/src/main/java/com/google/auto/value/processor/MethodSignature.java