EnglishFrenchSpanish

OnWorks favicon

countperlp - Online in the Cloud

Run countperlp in OnWorks free hosting provider over Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

This is the command countperlp that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

PROGRAM:

NAME


countperl - count lines, packages, subs and complexity of Perl files.

USAGE


countperl FILE_OR_DIRECTORY [FILE_OR_DIRECTORY ...] [--html] [--help]
[--method-modifiers=a,b,c]

REQUIRED ARGUMENTS


At least one file or directory path must be supplied.

OPTIONS


--help
Prints documentation to STDERR.

--html
Produces HTML output instead of the plain-text default.

--method-modifiers=a,b,c
A comma-separated list of method modifiers to be recognised, see
Moose::Manual::MethodModifiers for details. If unspecified, the default list is
before,after,around.

CONFIGURATION


N/A. Currently no support for any configuration files.

EXIT STATUS


Exits zero on success, non-zero on failure.

DESCRIPTION


countperl uses Perl::Metrics::Simple to examines the named files and recursivesly searches
named directories for Perl files.

Perl files are identified by Perl::Metrics::Simple->is_perl_file. Basically if the file
ends in ".pl", ".pm", or ".t" or has what appears to be a perl shebang line.

countperl produces a report on STDOUT of counts of total lines, packages,
subroutines/methods, the minimum, maximum, mean, standard deviation, and median size and
mccabe_complexity (cyclomatic complexity) of subroutines and the 'main' portion of each
file (everything not in a subroutine.)

Output Format
Line counts do not include comments nor pod.

The current output format is human-readable text:

Perl files found: 3

Counts
------
total code lines: 856
lines of non-sub code: 450
packages found: 3
subs/methods: 42

Subroutine/Method Size
----------------------
min: 3 lines
max: 32 lines
mean: 9.67 lines
std. deviation: 7.03
median: 7.50

McCabe Complexity
-----------------
Code not in any subroutine::
min: 1
max 1
mean: 1.00
std. deviation: 0.00
median: 1.00

Subroutines/Methods:
min: 1
max: 5
avg: 1.00
std. deviation: 1.36
median: 1.00

Tab-delimited list of subroutines, with most complex at top
-----------------------------------------------------------
complexity sub path size
5 is_perl_file lib/Perl/Metrics/Simple.pm 11
5 _has_perl_shebang lib/Perl/Metrics/Simple.pm 13
5 _init lib/Perl/Metrics/Simple/Analysis/File.pm 30
4 find_files lib/Perl/Metrics/Simple.pm 11
4 new lib/Perl/Metrics/Simple/Analysis.pm 10
4 is_ref lib/Perl/Metrics/Simple/Analysis.pm 8

With --html switch output format is HTML.

VERSION


This is version 0.031 of countperl.

DIAGNOSTICS


Prints usage message to STDERR if required arguments are not provided.

INCOMPATIBILITIES


None known.

Use countperlp online using onworks.net services


Free Servers & Workstations

Download Windows & Linux apps

  • 1
    GeoServer
    GeoServer
    GeoServer is an open-source software
    server written in Java that allows users
    to share and edit geospatial data.
    Designed for interoperability, it
    publishes da...
    Download GeoServer
  • 2
    Firefly III
    Firefly III
    A free and open-source personal finance
    manager. Firefly III features a
    double-entry bookkeeping system. You can
    quickly enter and organize your
    transactions i...
    Download Firefly III
  • 3
    Apache OpenOffice Extensions
    Apache OpenOffice Extensions
    The official catalog of Apache
    OpenOffice extensions. You'll find
    extensions ranging from dictionaries to
    tools to import PDF files and to connect
    with ext...
    Download Apache OpenOffice Extensions
  • 4
    MantisBT
    MantisBT
    Mantis is an easily deployable, web
    based bugtracker to aid product bug
    tracking. It requires PHP, MySQL and a
    web server. Checkout our demo and hosted
    offerin...
    Download MantisBT
  • 5
    LAN Messenger
    LAN Messenger
    LAN Messenger is a p2p chat application
    for intranet communication and does not
    require a server. A variety of handy
    features are supported including
    notificat...
    Download LAN Messenger
  • 6
    DrJava
    DrJava
    DrJava is a lightweight programming
    environment for Java designed to foster
    test-driven software development. It
    includes an intelligent program editor,
    an int...
    Download DrJava
  • More »

Linux commands

Ad