UNPKG

jscc-parser

Version:

A LALR(1) Parser Generator for JavaScript written in JavaScript.

109 lines (98 loc) 2.52 kB
/* * Universal module definition for logging in Node. */ (function(root, factory) { /* istanbul ignore next */ if (typeof define === 'function' && define.amd) { define(['require', '../global', '../enums/LOG_LEVEL'], factory); } else if (typeof module === 'object' && module.exports) { module.exports = factory(require); } else { root.jscclog = factory(function(mod) { return root["jscc" + mod.split("/").pop()]; }); } }(this, /** * @param {reqParameter} require * @param {...*} others * @returns {jscc.log} */ function(require, others) { //>>excludeStart("closure", pragmas.closure); var jscc = {}; //>>excludeEnd("closure"); var global = /** @type {jscc.global} */ (require("../global")), LOG_LEVEL = require("../enums/LOG_LEVEL"); /** * @constructor * @implements {jscc.log} */ jscc.logNode = function() { this._level = LOG_LEVEL.WARN; }; /** * @type {jscc.enums.LOG_LEVEL} * @private */ jscc.logNode.prototype._level = LOG_LEVEL.WARN; /** * @inheritDoc */ jscc.logNode.prototype.fatal = function(msg) { console.error(msg); global.errors++; }; /** * @inheritDoc */ jscc.logNode.prototype.error = function(msg) { if (this._level <= LOG_LEVEL.ERROR) { console.error(msg); } global.errors++; }; /** * @inheritDoc */ jscc.logNode.prototype.warn = function(msg) { if (this._level <= LOG_LEVEL.WARN) { console.warn(msg); } global.warnings++; }; /** * @inheritDoc */ jscc.logNode.prototype.info = function(msg) { if (this._level <= LOG_LEVEL.INFO) { console.info(msg); } }; /** * @inheritDoc */ jscc.logNode.prototype.debug = function(msg) { if (this._level <= LOG_LEVEL.DEBUG) { console.log(msg); } }; /** * @inheritDoc */ jscc.logNode.prototype.trace = function(msg) { if (this._level <= LOG_LEVEL.TRACE) { console.trace(msg); } }; /** * @inheritDoc */ jscc.logNode.prototype.setLevel = function(level) { this._level = level; }; /** * @module jscc/log/log */ return new jscc.logNode(); }));