Task

Walk a given directory tree and print files matching a given pattern.


Note: This task is for recursive methods.   These tasks should read an entire directory tree, not a single directory.


Note: Please be careful when running any code examples found here.



Related task

   Walk a directory/Non-recursively   (read a single directory). 


//usage example: To list just Rascal source files,    Walk(|home:///workspace/|, ".rsc");  
module Walk
import String;
import IO;
public void Walk(loc a, str pattern){
	for (entry <- listEntries(a))
		if (endsWith(entry, pattern))
		 	println(entry);
		elseif (isDirectory(a+entry))
			Walk(a+entry, pattern);
}