My favorites | Sign in
Project Home Downloads Wiki Source
Project Information
Members
Featured
Downloads

What is jsdet?

It's a tool whose main purpose is to report details about classes, functions, and closure objects declared in a given set of JavaScript files and belonging to the global scope (namespace). Note: The analysis is done in a static fashion.

It detects classes, and subclassing, defined through the most popular styles in plain JavaScript and through the use of the ExtJS JavaScript library. For an illustration of those styles go to the Class and Subclassing styles detected by jsdet wiki page.

Optionally, it reports also the global functions and closure objects declared in the global scope (namespace). Closure objects have the style illustrated in the Closure Objects style wiki page.

Note: only JavaScript complying to the ECMAScript specification is recognized. Extensions such as the ones from Mozilla (JavaScript 1.6 to 1.8) are not (yet) supported.

Status

Beta version.

Output samples

The following output samples resulted from a run of jsdet against the javascript-example/ directory:

  • HTML GUI output sample => NEW

    Tested OK with: Firefox 3.0, Opera 9.6, Chrome 1.0 and Safari 3.2. Some layout hazards with Internet Explorer 8.0.

Command line options

Usage:  java -jar jsdet.jar [options]* [JavaScript_file | directory]+

To read from standard input, use - (single dash) as a file/directory name.

Options:

--help, -h
	Displays this help.

--show-inherited-members, -i
	Show classes inherited members.
	By default inherited members are omitted from the output.

--asc
	Sort classes, in ascending order, according to their level in the class hierarchy.

--desc
	Sort classes, in descending order, according to their level in the class hierarchy.

--names-only
	Only report class names and closure object names.
	Information about class and closure object members is omitted.

--show-closure-objects, -o
	Report also the closure objects declared in the global namespace.

--show-functions, -f
	Report also the functions declared in the global namespace.

--show-files
	Show the name of the files where class members, closure objects and functions are defined.

--classes, -c  class1,class2,class3,class4...
	Only show information regarding the specified classes.
	Value is a comma separated list of class names.
	If this option is omitted, information about all classes is showed.

--html
	Generate simple HTML output.

--html-gui
	Generate JavaScript variables for the HTML GUI.
	This output must then be placed into the HTML GUI root directory as a file named `jsdet-output.js'.
	The HTML GUI directory is found in the jsdet distribution package as the directory named `html-gui-files'.

--xml
	Generate XML output.

Technologies used

Powered by Google Project Hosting