[GRASS-QA] GRASS QA: cho | ./grass6/lib/gis/parser.c |1 clones ( parser.c )| 1 monsters | 7 warnings

grass-qa at proxy.soccerlab.polymtl.ca grass-qa at proxy.soccerlab.polymtl.ca
Sun Sep 17 16:54:48 EDT 2006



Hello cho,

here a report on your recent GRASS-CVS change:

ANALYSIS

your changes to files/functions:


lib/gis/parser.c functions


G_disable_interactive (Begins at: 200 Ends at: 216)
--------------+---------+-------+---------+
Complexity:   |       1 |       |      OK |
ParamNBR:     |       1 |       |      OK |
CalledNBR:    |       0 |       |      OK |
LOC:          |      17 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

G_define_flag (Begins at: 219 Ends at: 267)
--------------+---------+-------+---------+
Complexity:   |       3 |       |      OK |
ParamNBR:     |       1 |       |      OK |
CalledNBR:    |       4 |       |      OK |
LOC:          |      49 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

G_define_option (Begins at: 270 Ends at: 340)
--------------+---------+-------+---------+
Complexity:   |       3 |       |      OK |
ParamNBR:     |       1 |       |      OK |
CalledNBR:    |       4 |       |      OK |
LOC:          |      71 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

G_define_standard_option (Begins at: 343 Ends at: 520)
--------------+---------+-------+---------+
Complexity:   |      22 |     * |         |
ParamNBR:     |       1 |       |      OK |
CalledNBR:    |      22 |       |      OK |
LOC:          |     178 |     * |         |
--------------+---------+-------+---------+
metrics are OK

G_define_module (Begins at: 523 Ends at: 557)
--------------+---------+-------+---------+
Complexity:   |       1 |       |      OK |
ParamNBR:     |       1 |       |      OK |
CalledNBR:    |       1 |       |      OK |
LOC:          |      35 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

G_parser (Begins at: 559 Ends at: 798)
--------------+---------+-------+---------+
Complexity:   |      34 |    ** | Warning |
ParamNBR:     |       2 |       |      OK |
CalledNBR:    |      56 |    ** | Warning |
LOC:          |     240 |    ** | Warning |
--------------+---------+-------+---------+
at least 3 values are close to an outlier please consider revising code

uses_new_gisprompt (Begins at: 801 Ends at: 846)
--------------+---------+-------+---------+
Complexity:   |       5 |       |      OK |
ParamNBR:     |       1 |       |      OK |
CalledNBR:    |       2 |       |      OK |
LOC:          |      46 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

G_usage (Begins at: 848 Ends at: 1013)
--------------+---------+-------+---------+
Complexity:   |      32 |    ** | Warning |
ParamNBR:     |       1 |       |      OK |
CalledNBR:    |      45 |     * |         |
LOC:          |     166 |     * |         |
--------------+---------+-------+---------+
at least 1 values are close to an outlier please consider revising code

print_escaped_for_xml (Begins at: 1015 Ends at: 1031)
--------------+---------+-------+---------+
Complexity:   |       6 |       |      OK |
ParamNBR:     |       2 |       |      OK |
CalledNBR:    |       4 |       |      OK |
LOC:          |      17 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

G_usage_xml (Begins at: 1033 Ends at: 1237)
--------------+---------+-------+---------+
Complexity:   |      26 |    ** | Warning |
ParamNBR:     |       1 |       |      OK |
CalledNBR:    |      65 |    ** | Warning |
LOC:          |     205 |    ** | Warning |
--------------+---------+-------+---------+
at least 3 values are close to an outlier please consider revising code

G_usage_html (Begins at: 1239 Ends at: 1461)
--------------+---------+-------+---------+
Complexity:   |      41 |   *** | MONSTER |
ParamNBR:     |       1 |       |      OK |
CalledNBR:    |      74 |    ** | Warning |
LOC:          |     223 |    ** | Warning |
--------------+---------+-------+---------+
1 metric are OUT OF RANGE!

generate_tcl (Begins at: 1463 Ends at: 1535)
--------------+---------+-------+---------+
Complexity:   |       9 |       |      OK |
ParamNBR:     |       1 |       |      OK |
CalledNBR:    |      25 |       |      OK |
LOC:          |      73 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

G_gui (Begins at: 1538 Ends at: 1567)
--------------+---------+-------+---------+
Complexity:   |       5 |       |      OK |
ParamNBR:     |       1 |       |      OK |
CalledNBR:    |       8 |       |      OK |
LOC:          |      30 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

G_tcltk (Begins at: 1570 Ends at: 1585)
--------------+---------+-------+---------+
Complexity:   |       3 |       |      OK |
ParamNBR:     |       1 |       |      OK |
CalledNBR:    |       2 |       |      OK |
LOC:          |      16 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

show_options (Begins at: 1587 Ends at: 1616)
--------------+---------+-------+---------+
Complexity:   |       4 |       |      OK |
ParamNBR:     |       2 |       |      OK |
CalledNBR:    |      10 |       |      OK |
LOC:          |      30 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

show (Begins at: 1618 Ends at: 1631)
--------------+---------+-------+---------+
Complexity:   |       3 |       |      OK |
ParamNBR:     |       2 |       |      OK |
CalledNBR:    |       3 |       |      OK |
LOC:          |      14 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

set_flag (Begins at: 1633 Ends at: 1660)
--------------+---------+-------+---------+
Complexity:   |       4 |       |      OK |
ParamNBR:     |       1 |       |      OK |
CalledNBR:    |       4 |       |      OK |
LOC:          |      28 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

contains (Begins at: 1665 Ends at: 1674)
--------------+---------+-------+---------+
Complexity:   |       3 |       |      OK |
ParamNBR:     |       2 |       |      OK |
CalledNBR:    |       0 |       |      OK |
LOC:          |      10 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

set_option (Begins at: 1676 Ends at: 1736)
--------------+---------+-------+---------+
Complexity:   |       6 |       |      OK |
ParamNBR:     |       1 |       |      OK |
CalledNBR:    |      13 |       |      OK |
LOC:          |      61 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

check_opts (Begins at: 1738 Ends at: 1775)
--------------+---------+-------+---------+
Complexity:   |       6 |       |      OK |
ParamNBR:     |       1 |       |      OK |
CalledNBR:    |       3 |       |      OK |
LOC:          |      38 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

check_an_opt (Begins at: 1777 Ends at: 1819)
--------------+---------+-------+---------+
Complexity:   |      10 |       |      OK |
ParamNBR:     |       4 |       |      OK |
CalledNBR:    |      13 |       |      OK |
LOC:          |      43 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

check_int (Begins at: 1821 Ends at: 1887)
--------------+---------+-------+---------+
Complexity:   |      13 |       |      OK |
ParamNBR:     |       2 |       |      OK |
CalledNBR:    |       6 |       |      OK |
LOC:          |      67 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

check_double (Begins at: 1889 Ends at: 1929)
--------------+---------+-------+---------+
Complexity:   |      13 |       |      OK |
ParamNBR:     |       2 |       |      OK |
CalledNBR:    |       6 |       |      OK |
LOC:          |      41 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

check_string (Begins at: 1931 Ends at: 1958)
--------------+---------+-------+---------+
Complexity:   |       8 |       |      OK |
ParamNBR:     |       2 |       |      OK |
CalledNBR:    |       6 |       |      OK |
LOC:          |      28 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

check_required (Begins at: 1960 Ends at: 1983)
--------------+---------+-------+---------+
Complexity:   |       4 |       |      OK |
ParamNBR:     |       1 |       |      OK |
CalledNBR:    |       2 |       |      OK |
LOC:          |      24 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

split_opts (Begins at: 1985 Ends at: 2048)
--------------+---------+-------+---------+
Complexity:   |       8 |       |      OK |
ParamNBR:     |       1 |       |      OK |
CalledNBR:    |       4 |       |      OK |
LOC:          |      64 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

check_multiple_opts (Begins at: 2050 Ends at: 2088)
--------------+---------+-------+---------+
Complexity:   |       6 |       |      OK |
ParamNBR:     |       1 |       |      OK |
CalledNBR:    |       5 |       |      OK |
LOC:          |      39 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

check_overwrite (Begins at: 2091 Ends at: 2147)
--------------+---------+-------+---------+
Complexity:   |      11 |       |      OK |
ParamNBR:     |       1 |       |      OK |
CalledNBR:    |      11 |       |      OK |
LOC:          |      57 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

interactive (Begins at: 2149 Ends at: 2177)
--------------+---------+-------+---------+
Complexity:   |       5 |       |      OK |
ParamNBR:     |       1 |       |      OK |
CalledNBR:    |       4 |       |      OK |
LOC:          |      29 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

interactive_flag (Begins at: 2179 Ends at: 2187)
--------------+---------+-------+---------+
Complexity:   |       1 |       |      OK |
ParamNBR:     |       1 |       |      OK |
CalledNBR:    |       4 |       |      OK |
LOC:          |       9 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

interactive_option (Begins at: 2189 Ends at: 2279)
--------------+---------+-------+---------+
Complexity:   |      23 |     * |         |
ParamNBR:     |       1 |       |      OK |
CalledNBR:    |      41 |     * |         |
LOC:          |      91 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

split_gisprompt (Begins at: 2281 Ends at: 2311)
--------------+---------+-------+---------+
Complexity:   |       4 |       |      OK |
ParamNBR:     |       4 |       |      OK |
CalledNBR:    |       0 |       |      OK |
LOC:          |      31 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

gis_prompt (Begins at: 2313 Ends at: 2358)
--------------+---------+-------+---------+
Complexity:   |      11 |       |      OK |
ParamNBR:     |       2 |       |      OK |
CalledNBR:    |      20 |       |      OK |
LOC:          |      46 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

G_recreate_command (Begins at: 2360 Ends at: 2462)
--------------+---------+-------+---------+
Complexity:   |      13 |       |      OK |
ParamNBR:     |       1 |       |      OK |
CalledNBR:    |      25 |       |      OK |
LOC:          |     103 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

Clone analysis:

This file has 1 potentially cloned functions:
  interactive_flag

In lib/gis/parser.c clones of  interactive_flag are:
	lib/gis/rm_colr.c  G_remove_colr


__________________________________________

Threshold GRASS6 key metrics values at 2006-09-17 are:
---------------------------+-----------+---------+
                    median | upper     | outlier |
                           | quartile  | limit   |
---------------------------+-----------+---------+
Complexity (Cyclo):      5 |        25 |      36 |
ParamNBR:                2 |         6 |       8 |
CalledNBR:               9 |        55 |      80 |
LOC:                    39 |       179 |     252 |
---------------------------+-----------+---------+

Measures (see below Web page for details):
 Complexity (Cyclo): a complexity index
 ParamNBR: number of passed parameters
 CalledNBR: number of called functions
 LOC: Lines Of Code

Message interpretation:
 OK : Nothing to say at all
 *  : above 75 % of value warning
 ** : this is getting close to be out of range, consider revising the code
 ***: this is a monster, definitely you should revise this function


__________________________________________
Brought to you by:
SOftware Cost-effective Change and Evolution Research (SOCCER) laboratory
http://web.soccerlab.polymtl.ca/grass-evolution/grass-browsers/grass-index-en.html




More information about the grass-qa mailing list