public static List<String> expandWildcards(File dir,List<String> modules,Backend forBackend){
  List<File> dirs=new ArrayList<File>();
  dirs.add(dir);
  return expandWildcards(dirs,modules,forBackend);
}

public static List < String > expandWildcards ( File dir , List < String > modules , Backend forBackend ) { List < File > dirs = new ArrayList < File > ( ) ; dirs . add ( dir ) ; return expandWildcards ( dirs , modules , forBackend ) ; }
given a source directory and a list of module names that possibly contain wildcards it returns a expanded list of module names of modules that were actually found in the given source directory . module names that didn ' t contain wildcards are left alone ( it ' s not checked if they exist or not ) . if a backend is passed expanded modules will be checked if they support it ( they either don ' t have a native annotation or it is for the correct backend ) .
