The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.


Perl::Critic::Utils::McCabe - Functions that calculate the McCabe score of source code.


Provides approximations of McCabe scores. The McCabe score of a set of code describes the number of possible paths through it. The functions here approximate the McCabe score by summing the number of conditional statements and operators within a set of code. See for some discussion about the McCabe number and other complexity metrics.


This is considered to be a public module. Any changes to its interface will go through a deprecation cycle.


calculate_mccabe_of_sub( $sub )

Calculates an approximation of the McCabe number of the code in a PPI::Statement::Sub.

calculate_mccabe_of_main( $doc )

Calculates an approximation of the McCabe number of all the code in a PPI::Statement::Document that is not contained in a subroutine.


Jeffrey Ryan Thalhammer <>


Copyright (c) 2005-2011 Imaginative Software Systems. All rights reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. The full text of this license can be found in the LICENSE file included with this module.