agentsqripts
Version:
Comprehensive static code analysis toolkit for identifying technical debt, security vulnerabilities, performance issues, and code quality problems
33 lines (27 loc) • 1.21 kB
JavaScript
/**
* @file Infer function name from block
* @description Single responsibility: Extract or generate meaningful function name
*/
/**
* Helper functions for recommendation generation
*/
function inferFunctionName(block) {
if (block && block.name && block.name !== 'anonymous') {
return block.name;
}
// Try to infer from the content or context
const codeSnippet = block.code || '';
// Look for common patterns in the code
if (codeSnippet.includes('validate')) return 'validateData';
if (codeSnippet.includes('calculate')) return 'calculateValue';
if (codeSnippet.includes('format')) return 'formatData';
if (codeSnippet.includes('filter')) return 'filterItems';
if (codeSnippet.includes('sort')) return 'sortItems';
if (codeSnippet.includes('map')) return 'transformData';
if (codeSnippet.includes('reduce')) return 'aggregateData';
if (codeSnippet.includes('fetch') || codeSnippet.includes('request')) return 'fetchData';
if (codeSnippet.includes('save') || codeSnippet.includes('write')) return 'saveData';
if (codeSnippet.includes('read') || codeSnippet.includes('load')) return 'loadData';
return 'extractedFunction';
}
module.exports = inferFunctionName;