Plato on Github
Report Home
node_modules/jshint/src/reporters/jslint_xml.js
Maintainability
60.24
Lines of code
57
Difficulty
22.78
Estimated Errors
0.48
Function weight
By Complexity
By SLOC
module.exports = { reporter: function (results) { "use strict"; var files = {}, out = [], pairs = { "&": "&", '"': """, "'": "'", "<": "<", ">": ">" }, file, i, issue; function encode(s) { for (var r in pairs) { if (typeof(s) !== "undefined") { s = s.replace(new RegExp(r, "g"), pairs[r]); } } return s || ""; } results.forEach(function (result) { result.file = result.file.replace(/^\.\//, ''); if (!files[result.file]) { files[result.file] = []; } files[result.file].push(result.error); }); out.push("<?xml version=\"1.0\" encoding=\"utf-8\"?>"); out.push("<jslint>"); for (file in files) { out.push("\t<file name=\"" + file + "\">"); for (i = 0; i < files[file].length; i++) { issue = files[file][i]; out.push("\t\t<issue line=\"" + issue.line + "\" char=\"" + issue.character + "\" reason=\"" + encode(issue.reason) + "\" evidence=\"" + encode(issue.evidence) + (issue.code ? "\" severity=\"" + encode(issue.code.charAt(0)) : "") + "\" />"); } out.push("\t</file>"); } out.push("</jslint>"); console.log(out.join("\n") + "\n"); } };