[GRASS-QA] GRASS QA: cho | ./grass6/lib/gis/parser.c |1 clones (
parser.c )| 1 monsters | 9 warnings
grass-qa at proxy.soccerlab.polymtl.ca
grass-qa at proxy.soccerlab.polymtl.ca
Thu Mar 22 03:24:10 EDT 2007
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: 160 Ends at: 181)
--------------+---------+-------+---------+
Complexity: | 1 | | OK |
ParamNBR: | 1 | | OK |
CalledNBR: | 0 | | OK |
LOC: | 22 | | OK |
--------------+---------+-------+---------+
metrics are OK
G_define_flag (Begins at: 184 Ends at: 242)
--------------+---------+-------+---------+
Complexity: | 3 | | OK |
ParamNBR: | 1 | | OK |
CalledNBR: | 4 | | OK |
LOC: | 59 | | OK |
--------------+---------+-------+---------+
metrics are OK
G_define_option (Begins at: 245 Ends at: 327)
--------------+---------+-------+---------+
Complexity: | 3 | | OK |
ParamNBR: | 1 | | OK |
CalledNBR: | 4 | | OK |
LOC: | 83 | | OK |
--------------+---------+-------+---------+
metrics are OK
G_define_standard_option (Begins at: 330 Ends at: 571)
--------------+---------+-------+---------+
Complexity: | 28 | ** | Warning |
ParamNBR: | 1 | | OK |
CalledNBR: | 31 | | OK |
LOC: | 242 | ** | Warning |
--------------+---------+-------+---------+
at least 2 values are close to an outlier please consider revising code
G_define_module (Begins at: 574 Ends at: 626)
--------------+---------+-------+---------+
Complexity: | 1 | | OK |
ParamNBR: | 1 | | OK |
CalledNBR: | 1 | | OK |
LOC: | 53 | | OK |
--------------+---------+-------+---------+
metrics are OK
G_parser (Begins at: 628 Ends at: 893)
--------------+---------+-------+---------+
Complexity: | 37 | *** | MONSTER |
ParamNBR: | 2 | | OK |
CalledNBR: | 74 | ** | Warning |
LOC: | 266 | ** | Warning |
--------------+---------+-------+---------+
at least 3 values are close to an outlier please consider revising code
uses_new_gisprompt (Begins at: 896 Ends at: 946)
--------------+---------+-------+---------+
Complexity: | 5 | | OK |
ParamNBR: | 1 | | OK |
CalledNBR: | 2 | | OK |
LOC: | 51 | | OK |
--------------+---------+-------+---------+
metrics are OK
G_usage (Begins at: 948 Ends at: 1131)
--------------+---------+-------+---------+
Complexity: | 31 | ** | Warning |
ParamNBR: | 1 | | OK |
CalledNBR: | 53 | * | |
LOC: | 184 | * | |
--------------+---------+-------+---------+
at least 1 values are close to an outlier please consider revising code
print_escaped_for_xml (Begins at: 1133 Ends at: 1149)
--------------+---------+-------+---------+
Complexity: | 6 | | OK |
ParamNBR: | 2 | | OK |
CalledNBR: | 4 | | OK |
LOC: | 17 | | OK |
--------------+---------+-------+---------+
metrics are OK
G_usage_xml (Begins at: 1151 Ends at: 1364)
--------------+---------+-------+---------+
Complexity: | 28 | ** | Warning |
ParamNBR: | 1 | | OK |
CalledNBR: | 71 | ** | Warning |
LOC: | 214 | ** | Warning |
--------------+---------+-------+---------+
at least 3 values are close to an outlier please consider revising code
G_usage_html (Begins at: 1366 Ends at: 1597)
--------------+---------+-------+---------+
Complexity: | 41 | *** | MONSTER |
ParamNBR: | 1 | | OK |
CalledNBR: | 80 | ** | Warning |
LOC: | 232 | ** | Warning |
--------------+---------+-------+---------+
1 metric are OUT OF RANGE!
G_script (Begins at: 1599 Ends at: 1693)
--------------+---------+-------+---------+
Complexity: | 22 | * | |
ParamNBR: | 1 | | OK |
CalledNBR: | 27 | | OK |
LOC: | 95 | | OK |
--------------+---------+-------+---------+
metrics are OK
generate_tcl (Begins at: 1695 Ends at: 1780)
--------------+---------+-------+---------+
Complexity: | 10 | | OK |
ParamNBR: | 1 | | OK |
CalledNBR: | 33 | | OK |
LOC: | 86 | | OK |
--------------+---------+-------+---------+
metrics are OK
G_gui (Begins at: 1783 Ends at: 1812)
--------------+---------+-------+---------+
Complexity: | 5 | | OK |
ParamNBR: | 1 | | OK |
CalledNBR: | 8 | | OK |
LOC: | 30 | | OK |
--------------+---------+-------+---------+
metrics are OK
G_tcltk (Begins at: 1815 Ends at: 1830)
--------------+---------+-------+---------+
Complexity: | 3 | | OK |
ParamNBR: | 1 | | OK |
CalledNBR: | 2 | | OK |
LOC: | 16 | | OK |
--------------+---------+-------+---------+
metrics are OK
show_options (Begins at: 1832 Ends at: 1861)
--------------+---------+-------+---------+
Complexity: | 4 | | OK |
ParamNBR: | 2 | | OK |
CalledNBR: | 10 | | OK |
LOC: | 30 | | OK |
--------------+---------+-------+---------+
metrics are OK
show (Begins at: 1863 Ends at: 1876)
--------------+---------+-------+---------+
Complexity: | 3 | | OK |
ParamNBR: | 2 | | OK |
CalledNBR: | 3 | | OK |
LOC: | 14 | | OK |
--------------+---------+-------+---------+
metrics are OK
set_flag (Begins at: 1878 Ends at: 1905)
--------------+---------+-------+---------+
Complexity: | 4 | | OK |
ParamNBR: | 1 | | OK |
CalledNBR: | 4 | | OK |
LOC: | 28 | | OK |
--------------+---------+-------+---------+
metrics are OK
contains (Begins at: 1910 Ends at: 1919)
--------------+---------+-------+---------+
Complexity: | 3 | | OK |
ParamNBR: | 2 | | OK |
CalledNBR: | 0 | | OK |
LOC: | 10 | | OK |
--------------+---------+-------+---------+
metrics are OK
set_option (Begins at: 1921 Ends at: 1981)
--------------+---------+-------+---------+
Complexity: | 6 | | OK |
ParamNBR: | 1 | | OK |
CalledNBR: | 13 | | OK |
LOC: | 61 | | OK |
--------------+---------+-------+---------+
metrics are OK
check_opts (Begins at: 1983 Ends at: 2020)
--------------+---------+-------+---------+
Complexity: | 6 | | OK |
ParamNBR: | 1 | | OK |
CalledNBR: | 3 | | OK |
LOC: | 38 | | OK |
--------------+---------+-------+---------+
metrics are OK
check_an_opt (Begins at: 2022 Ends at: 2064)
--------------+---------+-------+---------+
Complexity: | 10 | | OK |
ParamNBR: | 4 | | OK |
CalledNBR: | 13 | | OK |
LOC: | 43 | | OK |
--------------+---------+-------+---------+
metrics are OK
check_int (Begins at: 2066 Ends at: 2132)
--------------+---------+-------+---------+
Complexity: | 13 | | OK |
ParamNBR: | 2 | | OK |
CalledNBR: | 6 | | OK |
LOC: | 67 | | OK |
--------------+---------+-------+---------+
metrics are OK
check_double (Begins at: 2134 Ends at: 2174)
--------------+---------+-------+---------+
Complexity: | 13 | | OK |
ParamNBR: | 2 | | OK |
CalledNBR: | 6 | | OK |
LOC: | 41 | | OK |
--------------+---------+-------+---------+
metrics are OK
check_string (Begins at: 2176 Ends at: 2203)
--------------+---------+-------+---------+
Complexity: | 8 | | OK |
ParamNBR: | 2 | | OK |
CalledNBR: | 6 | | OK |
LOC: | 28 | | OK |
--------------+---------+-------+---------+
metrics are OK
check_required (Begins at: 2205 Ends at: 2228)
--------------+---------+-------+---------+
Complexity: | 4 | | OK |
ParamNBR: | 1 | | OK |
CalledNBR: | 2 | | OK |
LOC: | 24 | | OK |
--------------+---------+-------+---------+
metrics are OK
split_opts (Begins at: 2230 Ends at: 2293)
--------------+---------+-------+---------+
Complexity: | 8 | | OK |
ParamNBR: | 1 | | OK |
CalledNBR: | 4 | | OK |
LOC: | 64 | | OK |
--------------+---------+-------+---------+
metrics are OK
check_multiple_opts (Begins at: 2295 Ends at: 2333)
--------------+---------+-------+---------+
Complexity: | 6 | | OK |
ParamNBR: | 1 | | OK |
CalledNBR: | 5 | | OK |
LOC: | 39 | | OK |
--------------+---------+-------+---------+
metrics are OK
check_overwrite (Begins at: 2336 Ends at: 2392)
--------------+---------+-------+---------+
Complexity: | 11 | | OK |
ParamNBR: | 1 | | OK |
CalledNBR: | 11 | | OK |
LOC: | 57 | | OK |
--------------+---------+-------+---------+
metrics are OK
interactive (Begins at: 2394 Ends at: 2422)
--------------+---------+-------+---------+
Complexity: | 5 | | OK |
ParamNBR: | 1 | | OK |
CalledNBR: | 4 | | OK |
LOC: | 29 | | OK |
--------------+---------+-------+---------+
metrics are OK
interactive_flag (Begins at: 2424 Ends at: 2432)
--------------+---------+-------+---------+
Complexity: | 1 | | OK |
ParamNBR: | 1 | | OK |
CalledNBR: | 4 | | OK |
LOC: | 9 | | OK |
--------------+---------+-------+---------+
metrics are OK
interactive_option (Begins at: 2434 Ends at: 2524)
--------------+---------+-------+---------+
Complexity: | 23 | * | |
ParamNBR: | 1 | | OK |
CalledNBR: | 41 | * | |
LOC: | 91 | | OK |
--------------+---------+-------+---------+
metrics are OK
split_gisprompt (Begins at: 2526 Ends at: 2556)
--------------+---------+-------+---------+
Complexity: | 4 | | OK |
ParamNBR: | 4 | | OK |
CalledNBR: | 0 | | OK |
LOC: | 31 | | OK |
--------------+---------+-------+---------+
metrics are OK
gis_prompt (Begins at: 2558 Ends at: 2615)
--------------+---------+-------+---------+
Complexity: | 11 | | OK |
ParamNBR: | 2 | | OK |
CalledNBR: | 20 | | OK |
LOC: | 58 | | OK |
--------------+---------+-------+---------+
metrics are OK
G_recreate_command (Begins at: 2617 Ends at: 2719)
--------------+---------+-------+---------+
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 2007-03-22 are:
---------------------------+-----------+---------+
median | upper | outlier |
| quartile | limit |
---------------------------+-----------+---------+
Complexity (Cyclo): 5 | 25 | 37 |
ParamNBR: 2 | 6 | 9 |
CalledNBR: 10 | 60 | 86 |
LOC: 43 | 195 | 272 |
---------------------------+-----------+---------+
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