From 5ca7de977e3604bd522b5a7aab9a45e74499cac3 Mon Sep 17 00:00:00 2001 From: Nayab Gauhar <93754299+Nayab-Gauhar@users.noreply.github.com> Date: Fri, 31 Oct 2025 17:38:47 +0530 Subject: [PATCH] docs: Add JSDoc documentation to CountLanguages class Added comprehensive JSDoc comments to improve code documentation: - Document CountLanguages class purpose - Document countLanguageUsage method with @param, @returns, and @example tags - Improve developer experience and code maintainability --- countLanguages.js | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/countLanguages.js b/countLanguages.js index 5ffa781c84..3eec1ab735 100644 --- a/countLanguages.js +++ b/countLanguages.js @@ -1,10 +1,26 @@ +/** + * A utility class for analyzing programming language usage across GitHub repositories. + */ class CountLanguages { + /** + * Counts the number of repositories that use each programming language. + * + * @param {Array} repositories - An array of repository objects with a 'language' property + * @returns {Object} An object mapping language names to their usage count + * @example + * // Returns { JavaScript: 3, Python: 2 } + * countLanguageUsage([ + * { language: 'JavaScript' }, + * { language: 'JavaScript' }, + * { language: 'Python' }, + * { language: 'JavaScript' }, + * { language: 'Python' } + * ]); + */ countLanguageUsage(repositories) { const languageCount = {}; - for (const repo of repositories) { const language = repo.language; - if (language) { if (languageCount[language]) { languageCount[language]++; @@ -13,9 +29,7 @@ class CountLanguages { } } } - return languageCount; } } - module.exports = CountLanguages;