private static ImmutableList<Element> sameNameMethods(
        TypeElement enclosingTypeElement, Name simpleName) {
      return enclosingTypeElement.getEnclosedElements().stream()
          .filter(element -> element.getSimpleName().equals(simpleName) && isExecutable(element))
          .collect(toImmutableList());
    }
The index of the element among all elements of the same kind within the enclosing type. If
this is method {@code foo(...)} and the index is 0, that means that the method is the first
method called {@code foo} in the enclosing type.
common/src/main/java/com/google/auto/common/BasicAnnotationProcessor.java