I can give you an example program that analyses
C++ code. It has as input a tags file and a bunch
of C++ code. And it generates a bunch of html files
showing the class hierachy and the complexity off all classes. It does this in three steps:
- It parses the tagsfile to figure out
where to find all the classes and operations in the code,
and to build the class tree. This uses a fair amount
of regular expressions and a couple of functions that recursively walks through a hashes and arrays.
- It scans the c++ source files to figure out how many lines of code there are per operation and class.
The results are later used to sort the classes according
to complexity.
- It transforms the results into html files.
The code has not been optimized, and I think there
probably plenty of stuff to optimize. It has about 20 subs.
It was written when I just started programming in Perl,
so it probably can also be used to show how to improve
style and programming techniques.
You would need to have a fair amount of C++ code to analyse
and access to a ctags program. In addition, the C++ code should not use any namespaces.
Have Fun
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|