private boolean isVisible(Method m){
  if (!predicate.isVisible(m)) {
    if (Log.isLoggingOn()) {
      Log.logLine("Will not use: " + m.toGenericString());
      Log.logLine("  reason: the method is not visible from test classes");
    }
    return false;
  }
  if (!predicate.isVisible(m.getReturnType())) {
    if (Log.isLoggingOn()) {
      Log.logLine("Will not use: " + m.toGenericString());
      Log.logLine("  reason: the method's return type is not visible from test classes");
    }
    return false;
  }
  for (  Class<?> p : m.getParameterTypes()) {
    if (!predicate.isVisible(p)) {
      if (Log.isLoggingOn()) {
        Log.logLine("Will not use: " + m.toGenericString());
        Log.logLine("  reason: the method has a parameter that is not visible from test classes");
      }
      return false;
    }
  }
  return true;
}

private boolean isVisible ( Method m ) { if ( ! predicate . isVisible ( m ) ) { if ( Log . isLoggingOn ( ) ) { Log . logLine ( "Will not use: " + m . toGenericString ( ) ) ; Log . logLine ( "  reason: the method is not visible from test classes" ) ; } return false ; } if ( ! predicate . isVisible ( m . getReturnType ( ) ) ) { if ( Log . isLoggingOn ( ) ) { Log . logLine ( "Will not use: " + m . toGenericString ( ) ) ; Log . logLine ( "  reason: the method's return type is not visible from test classes" ) ; } return false ; } for ( Class < ? > p : m . getParameterTypes ( ) ) { if ( ! predicate . isVisible ( p ) ) { if ( Log . isLoggingOn ( ) ) { Log . logLine ( "Will not use: " + m . toGenericString ( ) ) ; Log . logLine ( "  reason: the method has a parameter that is not visible from test classes" ) ; } return false ; } } return true ; }
determines whether a method , its parameter types , and its return type are all visible .
