Code covered by the BSD License  

Highlights from
SubFuns

4.33333

4.3 | 3 ratings Rate this file 4 Downloads (last 30 days) File Size: 5.88 KB File ID: #5563
image thumbnail

SubFuns

by Robert Bemis

 

26 Jul 2004 (Updated 13 Jan 2010)

Command-line utility to list all function declarations within a specified m-file.

Editor's Notes:

This file was a File Exchange Pick of the Week

| Watch this File

File Information
Description

The MATLAB Editor provides a pull-down tool to Show Functions within an open m-file. But suppose you want to see function decalarations inside an m-file without editing. Perhaps you need to debug GUI callbacks, or understand someone else's function. You may not remember everything in a long list of functions after the Show Functions pull-down disappears. In these situations it would be helpful if the function list would hang around for reference. That's what this utility does.

This utility also highlights some interesting new capabilities of the MATLAB 7 desktop enviroment such as hyperlinks in the Command Window. Also, check out the code for examples of nested functions, block comments, and TODO/FIXME notes.

Acknowledgements
This submission has inspired the following:
HyperSubFunHelp
MATLAB release MATLAB 7 (R14)
Tags for This File  
Everyone's Tags
Tags I've Applied
Add New Tags Please login to tag files.
Comments and Ratings (8)
30 Jul 2004 Bob Johnson  
28 Jan 2006 Victor Zakharov

It's need tool

25 Nov 2007 Telmo Amaral

This is very good and fast. Slightly modified, it can be used from within code to provide reflection (that is, to identify which sub-functions are defined in the code itself)! The only glitch is that it gets deceived by functions defined as follows (I sometimes use this formatting style, to have all function names vertically aligned).

function output =...
   fun(input)

05 Jul 2008 abelardo castro rincon

gracias por hacerme una invitacion esta pajina es muy interesante

29 Jul 2009 Jimy Shah

Its a very helpful tool. Thanks !

08 Jun 2010 Nam Ngo

Thanks, it is a wonderful tool to analyze large m-file

25 Aug 2011 Jon Griffiths

It doesn't appear to work with functions that sit within a collection.

27 Aug 2011 Robert Bemis

Thanks to Jon for bringing to my attention the class method limitation.

Note that SubFuns was written years before the new MATLAB class system was developed. Rather than just hack SubFuns for this case I'd rather do something elegant and robust but not immediately (other priorities). (That would be a good opportunity to address Telmo's case too.) Meanwhile, here's a workaround.

>> SubFuns +classdir/methodfcn

Enjoy!

Please login to add a comment or rating.
Updates
06 Aug 2004

Bug fix: original errored m-files with only one function declaration. Also added comments and updated description to highlight some new language and desktop features with MATLAB 7 (Release 14).

13 Jan 2010

copyright

Tag Activity for this File
Tag Applied By Date/Time
nested function Robert Bemis 22 Oct 2008 07:28:27
subfunction Robert Bemis 22 Oct 2008 07:28:27
subfuns Robert Bemis 22 Oct 2008 07:28:27
utilities Robert Bemis 22 Oct 2008 07:28:27

Contact us at files@mathworks.com