MiaoScript/src/main/resources/core/console.js

30 lines
808 B
JavaScript
Raw Normal View History

// @ts-check
(
/**
* @param {{ info: (arg0: string) => void; }} logger
*/
function(logger) {
function log() {
logger.info(Array.prototype.join.call(arguments, ' '))
}
/**
* @param {string} prefix
*/
function _proxy(prefix) {
return function() {
log('[' + prefix + ']', Array.prototype.join.call(arguments, ' '))
}
}
return {
log: log,
info: log,
ex: log,
// @ts-ignore
trace: global.level === "trace" ? _proxy('TRACE') : global.noop,
// @ts-ignore
debug: global.debug ? _proxy('DEBUG') : global.noop,
warn: _proxy('WARN'),
error: _proxy('ERROR')
};
})