◦Number of if statements
◦Number of return statements
◦Number of loop nests
◦Nesting level of each loop nest
◦Number of indirect calls
◦Number of direct calls
◦Targets of direct calls
◦Cyclomatic complexity
◦Cyclomatic complexity without switch
◦Cyclomatic complexity without exception handling
◦Cyclomatic complexity without switch and exception handling
◦Number of Thread Local Storage (TLS) variables
◦Number of mutexes
◦Number of lock calls
◦Number of unlock calls
For each indirect call site, cadvise emits the list of possible call targets.
•Cyclomatic Complexity
Cyclomatic complexity metric, developed by Thomas McCabe in 1976 ,measures the number of
•Indirect Call Targets
This refers to the list of functions that can be called at an indirect call site. Calculation of this metric leads to an increase in analysis time and so the +metrics option does not emit Indirect Call Targets by default. You need to specify ict as a suboption to the +metrics option for emission of indirect call targets. This causes emission of Indirect Call Targets in addition to all other default metrics.
The following example shows the code complexity metrics.