1.0.1 • Published 11 months ago

code-metrics-module v1.0.1

Weekly downloads
-
License
MIT
Repository
-
Last release
11 months ago

code-metrics-module

npm version License

A code metrics library for analyzing the complexity and statistics of code files in various programming languages.

Installation

npm install code-metrics-module

Usage

const calculateCodeMetrics = require('code-metrics');

const filePath = 'path/to/your/code/file';
const metrics = calculateCodeMetrics(filePath);

console.log(metrics);
LanguageTested
JavaScript✅ Fully tested
PHP❌ Not fully tested
Java❌ Not fully tested
TypeScript❌ Not fully tested

Functions

calculateCodeMetrics(filePath)

Calculates the code metrics of a code file at the specified filePath.

filePath (string): The path to the code file.

Returns an object with the following properties:

linesOfCode (number): The total number of lines of code in the file.

functions (number): The total number of functions/methods defined in the file.

complexity (number): The complexity score of the code file.

language (string): The programming language of the code file.

errors (array): An array of error objects, if any parsing errors or

unsupported language errors occur. Each error object has the following properties:

type (string): The type of the error (e.g., "Parsing Error", "Language Error").

message (string): The error message.

line (number): The line number where the error occurred.

column (number): The column number where the error occurred.

Examples

Example 1: Calculating Code Metrics

const calculateCodeMetrics = require('code-metrics');

const filePath = 'path/to/your/code/file';
const metrics = calculateCodeMetrics(filePath);

console.log(metrics);

Output;

{
  linesOfCode: 123,
  functions: 5,
  complexity: 10,
  language: 'JavaScript',
  errors: []
}

Example 2: Handling Parsing Errors

const calculateCodeMetrics = require('code-metrics');

const filePath = 'path/to/your/code/file';
const metrics = calculateCodeMetrics(filePath);

if (metrics.errors.length > 0) {
  console.log('Parsing errors occurred:');
  metrics.errors.forEach((error, index) => {
    console.log(`Error ${index + 1}:`);
    console.log('Type:', error.type);
    console.log('Message:', error.message);
    console.log('Line:', error.line);
    console.log('Column:', error.column);
  });
}

Output (if parsing errors occur):

Parsing errors occurred:
Error 1:
Type: Parsing Error
Message: Unexpected token '<'
Line: 1
Column: 1
1.0.1

11 months ago