X-Git-Url: https://git.r.bdr.sh/rbdr/tomato-sauce/blobdiff_plain/a140f3add912ef4bd659c1c1e82184643be7d845..HEAD:/lib/util.js diff --git a/lib/util.js b/lib/util.js index 3234d3e..65f14ae 100644 --- a/lib/util.js +++ b/lib/util.js @@ -3,38 +3,70 @@ const Fs = require('fs'); const Path = require('path'); -// Module containing utility functions. +/** + * Module containing utility functions + * + * @name Util + * @type Object + */ const Util = { - // Parses a 16 bit number buffer. - parse16BitBuffer: function (buffer) { + /** + * Parses a 16 bit number buffer + * + * @function parse16BitBuffer + * @memberof Util + * @param {Array} buffer the buffer to parse + * @return {Number} the parsed value + */ + parse16BitBuffer(buffer) { + return buffer[0] * 256 + buffer[1]; }, - // Picks a random element from an array. - pickRandom: function (array) { + /** + * Picks a random element from an array + * + * @function pickRandom + * @memberof Util + * @param {Array} array the array to use + * @return {Any} the picked element + */ + pickRandom(array) { + return array[Math.floor(Math.random() * array.length)]; }, - // For a given path, requires all of the files and returns an array - // with the results. If the directory contains any non-requireable file, - // it will fail. - loadFiles: function (path) { - return new Promise(function (resolve, reject) { - Fs.readdir(path, function (err, files) { + /** + * For a gi ven path, requires all of the files and returns an array + * with the results. If the directory contains any non-requireable + * files, it will fail. + * + * @function loadFiles + * @memberof Util + * @param {String} path the path where the files are located + * @return {Array} the array of all the loaded modules + */ + loadFiles(path) { + + return new Promise((resolve, reject) => { + + Fs.readdir(path, (err, files) => { + if (err) { return reject(err); } - let loadedFiles = []; + const loadedFiles = []; - for (let file of files) { - let filePath = Path.join(path, file); + for (const file of files) { + const filePath = Path.join(path, file); let loadedFile; try { loadedFile = require(filePath); - } catch (err) { + } + catch (err) { return reject(err); }