Recursive Input

Recursive Input

Report:  Recursive Descent Input Mode
Option:  -r
Required Parameters:  -r <file extension list> <starting directory for recursive descent>
Compatible Options:  RSM Option Cross Reference
rsm -H -O"report.htm" -r"h,c,cpp c:\work\reports"
rsm -H -r"java c:\work\reports" > report.htm
Source:  C, C++, C# and Java
The -r input mode recursively descends the specified directory looking for files which have the specified extensions.  The mode can easily acquire all the source files for a large project.  The option requires two additional parameters in successive order.  -r must be the last option used in the list of RSM options.   -r is always followed by a comma delimited list of source code file extensions and the starting directory.  For example:  You wish to start at c:\project and process the metrics on all header, C++ source and Java source files.  You also wish to process the metrics for functions, object classes and complexity.  The following RSM command can be used to accomplish this:

rsm -fa -o -c -r"h,cpp,java c:\project" > project_metrics.txt

There are recursive descent modifiers that can used to alter the behavior of the recursive descent.  -RN tells the recursive algorithm to not sort the directory/filenames alphabetically.  This can greatly increase the speed of recursive descent.  It also report the file names as they occur in the directory tree.  -RL creates a list of the filenames to be processed by the recursive descent but does not actually perform any metrics parsing.  This mode can be used to see which files would have been processed.

RSM 6.10 adds a feature in the rsm.cfg file to skip specific named directories in recursive descent. This feature is very useful for passing over configuration control directories such as "sccs,rcs,cvs" or specific names test directories like "test,user_test". By specifying Yes and adding the list of direcories this feature is enabled.

Do not process these local directories : Yes
Local directory names not processed : sccs,cvs,rcs