code: private boolean isSetterForField(ExecutableElement setter, VariableElement field) {
      return setter.getParameters() != null
          && setter.getParameters().size() == 1
          && setter.getParameters().get(0).asType().equals(field.asType());
      // TODO inheritance? TypeUtils is applicable?
    }
docs: Checks if the setter method is valid for the given field
  
  @param setter The setter method
  @param field The field
  @return true if setter works for given field, otherwise false