makeerror
Advanced tools
Comparing version 1.0.2 to 1.0.3
@@ -6,43 +6,65 @@ /* automatically generated by JSCoverage - do not edit */ | ||
_$jscoverage['makeerror.js'][1] = 0; | ||
_$jscoverage['makeerror.js'][28] = 0; | ||
_$jscoverage['makeerror.js'][29] = 0; | ||
_$jscoverage['makeerror.js'][3] = 0; | ||
_$jscoverage['makeerror.js'][30] = 0; | ||
_$jscoverage['makeerror.js'][31] = 0; | ||
_$jscoverage['makeerror.js'][32] = 0; | ||
_$jscoverage['makeerror.js'][33] = 0; | ||
_$jscoverage['makeerror.js'][34] = 0; | ||
_$jscoverage['makeerror.js'][35] = 0; | ||
_$jscoverage['makeerror.js'][36] = 0; | ||
_$jscoverage['makeerror.js'][37] = 0; | ||
_$jscoverage['makeerror.js'][38] = 0; | ||
_$jscoverage['makeerror.js'][39] = 0; | ||
_$jscoverage['makeerror.js'][40] = 0; | ||
_$jscoverage['makeerror.js'][42] = 0; | ||
_$jscoverage['makeerror.js'][43] = 0; | ||
_$jscoverage['makeerror.js'][45] = 0; | ||
_$jscoverage['makeerror.js'][46] = 0; | ||
_$jscoverage['makeerror.js'][48] = 0; | ||
_$jscoverage['makeerror.js'][52] = 0; | ||
_$jscoverage['makeerror.js'][53] = 0; | ||
_$jscoverage['makeerror.js'][55] = 0; | ||
} | ||
_$jscoverage['makeerror.js'][1]++; | ||
var tmpl = require("tmpl"); | ||
_$jscoverage['makeerror.js'][3]++; | ||
module.exports = makeError; | ||
_$jscoverage['makeerror.js'][28]++; | ||
_$jscoverage['makeerror.js'][30]++; | ||
function makeError(name, defaultMessage, defaultData) { | ||
_$jscoverage['makeerror.js'][29]++; | ||
defaultMessage = defaultMessage || ""; | ||
_$jscoverage['makeerror.js'][30]++; | ||
_$jscoverage['makeerror.js'][31]++; | ||
defaultMessage = tmpl(defaultMessage || ""); | ||
_$jscoverage['makeerror.js'][32]++; | ||
defaultData = defaultData || {}; | ||
_$jscoverage['makeerror.js'][32]++; | ||
_$jscoverage['makeerror.js'][34]++; | ||
var CustomError = (function (message, data) { | ||
_$jscoverage['makeerror.js'][33]++; | ||
_$jscoverage['makeerror.js'][35]++; | ||
if (! (this instanceof CustomError)) { | ||
_$jscoverage['makeerror.js'][33]++; | ||
_$jscoverage['makeerror.js'][35]++; | ||
return new CustomError(message, data); | ||
} | ||
_$jscoverage['makeerror.js'][34]++; | ||
_$jscoverage['makeerror.js'][37]++; | ||
if (typeof message !== "string" && ! data) { | ||
_$jscoverage['makeerror.js'][38]++; | ||
data = message; | ||
_$jscoverage['makeerror.js'][39]++; | ||
message = null; | ||
} | ||
_$jscoverage['makeerror.js'][42]++; | ||
this.name = name; | ||
_$jscoverage['makeerror.js'][35]++; | ||
this.message = message || defaultMessage; | ||
_$jscoverage['makeerror.js'][36]++; | ||
_$jscoverage['makeerror.js'][43]++; | ||
this.data = data || defaultData; | ||
_$jscoverage['makeerror.js'][45]++; | ||
if (typeof message === "string") { | ||
_$jscoverage['makeerror.js'][46]++; | ||
this.message = tmpl(message, this.data); | ||
} | ||
else { | ||
_$jscoverage['makeerror.js'][48]++; | ||
this.message = defaultMessage(this.data); | ||
} | ||
}); | ||
_$jscoverage['makeerror.js'][39]++; | ||
_$jscoverage['makeerror.js'][52]++; | ||
CustomError.prototype = defaultData.proto || new Error(); | ||
_$jscoverage['makeerror.js'][40]++; | ||
_$jscoverage['makeerror.js'][53]++; | ||
delete defaultData.proto; | ||
_$jscoverage['makeerror.js'][42]++; | ||
_$jscoverage['makeerror.js'][55]++; | ||
return CustomError; | ||
} | ||
_$jscoverage['makeerror.js'].source = ["module.exports = makeError","","/**"," * Makes an Error function with the signature:"," *"," * function(message, data)"," *"," * You'll typically do something like:"," *"," * var UnknownFileTypeError = makeError("," * 'UnknownFileTypeError',"," * 'The specified type is not known.'"," * )"," * var er = UnknownFileTypeError()"," *"," * `er` will have a prototype chain that ensures:"," *"," * er instanceof Error"," * er instanceof UnknownFileTypeError"," *"," * You can also do `var er = new UnknownFileTypeError()` if you really like the"," * `new` keyword."," *"," * @param String The name of the error."," * @param String The default message string."," * @param Object The default data object, merged with per instance data."," */","function makeError(name, defaultMessage, defaultData) {"," defaultMessage = defaultMessage || ''"," defaultData = defaultData || {}",""," var CustomError = function(message, data) {"," if (!(this instanceof CustomError)) return new CustomError(message, data)"," this.name = name"," this.message = message || defaultMessage"," this.data = data || defaultData"," }",""," CustomError.prototype = defaultData.proto || new Error()"," delete defaultData.proto",""," return CustomError","}"]; | ||
_$jscoverage['makeerror.js'].source = ["var tmpl = require('tmpl')","","module.exports = makeError","","/**"," * Makes an Error function with the signature:"," *"," * function(message, data)"," *"," * You'll typically do something like:"," *"," * var UnknownFileTypeError = makeError("," * 'UnknownFileTypeError',"," * 'The specified type is not known.'"," * )"," * var er = UnknownFileTypeError()"," *"," * `er` will have a prototype chain that ensures:"," *"," * er instanceof Error"," * er instanceof UnknownFileTypeError"," *"," * You can also do `var er = new UnknownFileTypeError()` if you really like the"," * `new` keyword."," *"," * @param String The name of the error."," * @param String The default message string."," * @param Object The default data object, merged with per instance data."," */","function makeError(name, defaultMessage, defaultData) {"," defaultMessage = tmpl(defaultMessage || '')"," defaultData = defaultData || {}",""," var CustomError = function(message, data) {"," if (!(this instanceof CustomError)) return new CustomError(message, data)",""," if (typeof message !== 'string' && !data) {"," data = message"," message = null"," }",""," this.name = name"," this.data = data || defaultData",""," if (typeof message === 'string') {"," this.message = tmpl(message, this.data)"," } else {"," this.message = defaultMessage(this.data)"," }"," }",""," CustomError.prototype = defaultData.proto || new Error()"," delete defaultData.proto",""," return CustomError","}"]; |
@@ -0,1 +1,3 @@ | ||
var tmpl = require('tmpl') | ||
module.exports = makeError | ||
@@ -29,3 +31,3 @@ | ||
function makeError(name, defaultMessage, defaultData) { | ||
defaultMessage = defaultMessage || '' | ||
defaultMessage = tmpl(defaultMessage || '') | ||
defaultData = defaultData || {} | ||
@@ -35,5 +37,16 @@ | ||
if (!(this instanceof CustomError)) return new CustomError(message, data) | ||
if (typeof message !== 'string' && !data) { | ||
data = message | ||
message = null | ||
} | ||
this.name = name | ||
this.message = message || defaultMessage | ||
this.data = data || defaultData | ||
if (typeof message === 'string') { | ||
this.message = tmpl(message, this.data) | ||
} else { | ||
this.message = defaultMessage(this.data) | ||
} | ||
} | ||
@@ -40,0 +53,0 @@ |
{ | ||
"name": "makeerror", | ||
"description": "A library to make errors.", | ||
"version": "1.0.2", | ||
"version": "1.0.3", | ||
"author": "Naitik Shah <n@daaku.org>", | ||
@@ -12,2 +12,5 @@ "main": "lib/makeerror", | ||
"scripts": { "test": "./node_modules/.bin/expresso -c" }, | ||
"dependencies": { | ||
"tmpl": ">= 1.0.0" | ||
}, | ||
"devDependencies": { | ||
@@ -14,0 +17,0 @@ "expresso": ">= 0.8.1" |
6516
122
1
+ Addedtmpl@>= 1.0.0
+ Addedtmpl@1.0.5(transitive)