image thumbnail

UniqueFuncNames

version 1.0.0.0 (3.77 KB) by Jan
Check uniqueness of function names

450 Downloads

Updated 10 Jun 2010

View License

UniqueFuncNames - Check uniqueness of function names

If you install a large 3rd party toolbox, the file names may interfere with other installed toolboxes. This simple funtion compares the names of all M-, P- and Mex-files found in the Matlab path and displays non-unique names.

P- and Mex-files with the same name as a corresponding M-file are accepted, if they are found in the same folder.
Local subfunctions inside the M- or P-file and nested functions are not taken into account, because it is assumed, that a potential shadowing is wanted.
Class paths as "\@cell" and package paths as "\+mypackage" are not considered in this version.

INPUT: None.
OUTPUT: Logical flag, TRUE if the names are unique considering some
exceptions:
1. Files which are intentionally not unique:
"Contents.m" exists in each folder.
"prefspanel.m" exists in some folder to register control panels.
"messageProductNameKey" returns the product key for toolboxes.
2. Some user defined folders might contain functions, which are wanted to
shadow function of Matlab's or user define toolbox functions, e.g. to
improve them. Such folders must be inserted in a leading position in the
Matlab path. A further example is a folder, which contains Mex functions,
which are compiled for a specific Matlab version, e.g. if you run Matlab
6.5 (DLL) and 7 (MEXW32) simulataneously.
3. Further exceptions occur e.g. in Matlab 2009a:
\R2009a\toolbox\matlab\lang\function.m
\R2009a\toolbox\compiler\function.m
Exclude one of them using the full file name including the path.
The exceptions depend on your installed toolboxes and have to be adjusted to
your machine. The corresponding lines are marked by '###' in the source.

I'd appreciate all comments and ideas for improvements and additions.

For further debugging see also:
CHECKVARS (Matt Fig):
http://www.mathworks.com/matlabcentral/fileexchange/27853
FDEP (Us):
http://www.mathworks.com/matlabcentral/fileexchange/17291

Cite As

Jan (2021). UniqueFuncNames (https://www.mathworks.com/matlabcentral/fileexchange/27861-uniquefuncnames), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2009a
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!